docs/example.rb in zebra-zpl-1.1.3 vs docs/example.rb in zebra-zpl-1.1.4
- old
+ new
@@ -1,290 +1,290 @@
-require_relative '../lib/zebra/zpl'
-
-def print_zpl_str(name, label)
- zpl = ''
- label.dump_contents zpl
- puts "\n#{name}:\n#{zpl}\n\n"
-end
-
-def new_label
- Zebra::Zpl::Label.new(
- width: 600,
- length: 305,
- print_speed: 6,
- print_density: 5,
- copies: 1
- )
-end
-
-################################################################################
-# Text
-################################################################################
-label = new_label
-text = Zebra::Zpl::Text.new(
- data: "Hello, printer!",
- position: [10, 125],
- font_size: Zebra::Zpl::FontSize::SIZE_5,
- justification: Zebra::Zpl::Justification::CENTER
-)
-box = Zebra::Zpl::Graphic.new(
- graphic_type: 'B',
- position: [10,5],
- graphic_width: label.width,
- graphic_height: label.length-10,
- line_thickness: 1,
- rounding_degree: 1
-)
-label << text
-label << box
-print_zpl_str('text', label)
-
-################################################################################
-# Raw ZPL
-################################################################################
-label = new_label
-zpl_string = "^GFA,1300,1300,13,,::::::O01IFE,N01KFE,N0MFC,M03NF,M0OFC,L03PF,L0QF8,K01QFE,K03RF,K07RF8,J01SFC,J03F9OFE7E,J07F01MFE03F,J07E007LF803F8,J0FE003KFE001FC,I01FEI0FC00FC001FE,I03FCI04M01FF,I07FCQ01FF,I07FCQ01FF8,I0FFCQ01FFC,I0FFEQ01FFC,001FFEQ01FFE,:003FFEQ03IF,003FFEQ01IF,007FFCR0IF,007FFCR0IF8,007FF8R07FF8,00IFS03FF8,00IFS03FFC,:00FFES01FFC,01FFES01FFC,01FFES01FFE,:01FFCS01FFE,:::::01FFES01FFE,::01FFES03FFE,01IFS03FFE,01IFS03FFC,01IF8R07FFC,00IF8R0IFC,00IFCR0IFC,00IFEQ01IFC,00JFQ03IF8,007IF8P07IF8,007IFCP0JF8,007JFO03JF,003F87FCN0KF,003F81FFM03JFE,001F80FFEK01KFE,001FC07FFCJ0LFC,I0FF03FF8J0LFC,I0FF03FF8J07KF8,I07F81FF8J07KF8,I03F807F8J07KF,I03FC004K07JFE,I01FCN07JFE,J0FEN07JFC,J07FN07JF8,J03F8M07JF,J01FCM07IFE,K0FFM07IFC,K07IF8J07IF8,K03IF8J07IF,L0IF8J07FFC,L07FF8J07FF8,L01FF8J07FE,M0FF8J07F8,M01F8J07E,N07K038,,::::::::::::::^FS"
-raw_zpl = Zebra::Zpl::Raw.new(
- data: zpl_string,
- position: [50, 50],
-)
-label << raw_zpl
-print_zpl_str('raw_zpl', label)
-
-################################################################################
-# Barcode
-################################################################################
-label = new_label
-barcode = Zebra::Zpl::Barcode.new(
- data: 'F112358',
- position: [80, 50],
- height: 150,
- width: 4,
- print_human_readable_code: true,
- type: Zebra::Zpl::BarcodeType::CODE_128_AUTO
-)
-label << barcode
-print_zpl_str('barcode', label)
-
-################################################################################
-# QR Code
-################################################################################
-label = new_label
-qrcode = Zebra::Zpl::Qrcode.new(
- data: 'www.github.com',
- position: [200, 45],
- scale_factor: 8,
- correction_level: 'H',
-)
-label << qrcode
-print_zpl_str('qrcode', label)
-
-################################################################################
-# Data Matrix
-################################################################################
-label = new_label
-datamatrix = Zebra::Zpl::Datamatrix.new(
- data: 'www.github.com',
- position: [225, 75],
- symbol_height: 10,
- aspect_ratio: 1
-)
-label << datamatrix
-print_zpl_str('datamatrix', label)
-
-################################################################################
-# Graphics
-################################################################################
-label = new_label
-box = Zebra::Zpl::Graphic.new(
- graphic_type: 'B',
- position: [10,10],
- graphic_width: 80,
- graphic_height: 80,
- line_thickness: 2,
- rounding_degree: 2
-)
-circle = Zebra::Zpl::Graphic.new(
- graphic_type: 'C',
- position: [100,10],
- graphic_width: 80,
- line_thickness: 3
-)
-diagonal1 = Zebra::Zpl::Graphic.new(
- graphic_type: 'D',
- position: [190,10],
- graphic_width: 80,
- graphic_height: 80,
- line_thickness: 3,
- orientation: 'R'
-)
-diagonal2 = diagonal1.dup
-diagonal2.orientation = 'L'
-ellipse = Zebra::Zpl::Graphic.new(
- graphic_type: 'E',
- position: [280,10],
- graphic_width: 40,
- graphic_height: 80,
- line_thickness: 3
-)
-symbol = Zebra::Zpl::Graphic.new(
- graphic_type: 'S',
- symbol_type: 'B',
- position: [335,10],
- graphic_width: 80,
- graphic_height: 80
-)
-
-label << box
-label << circle
-label << diagonal1
-label << diagonal2
-label << ellipse
-label << symbol
-label.elements.each { |e| e.position = [e.x + 110 , e.y + 90] }
-print_zpl_str('graphics', label)
-
-################################################################################
-# Images
-################################################################################
-label = new_label
-image = Zebra::Zpl::Image.new(
- path: File.expand_path('./images/earth.jpg', File.dirname(__FILE__)),
- position: [145, 0],
- width: 305,
- height: 305
-)
-label << image
-print_zpl_str('image', label)
-
-# inverted image
-label = new_label
-image = Zebra::Zpl::Image.new(
- path: File.expand_path('./images/earth.jpg', File.dirname(__FILE__)),
- position: [145, 0],
- width: 305,
- height: 305,
- invert: true
-)
-label << image
-print_zpl_str('image_inverted', label)
-
-################################################################################
-# Image Manipulation
-################################################################################
-label = new_label
-image = Zebra::Zpl::Image.new(
- path: File.expand_path('./images/ruby.png', File.dirname(__FILE__)),
- position: [0, 0],
- width: 305,
- height: 305,
- black_threshold: 0.65
-)
-src = image.source
-src.background('white').flatten
-
-# perform edge detection on the image
-MiniMagick::Tool::Convert.new do |convert|
- convert << src.path
- convert << '-colorspace' << 'gray'
- convert << '-edge' << '4'
- convert << '-negate'
- convert << src.path
-end
-
-src.trim
-
-label << image
-print_zpl_str('image_manipulation', label)
-
-################################################################################
-# Justification
-################################################################################
-label = new_label
-t1 = Zebra::Zpl::Text.new(
- data: "ZPL",
- position: [10, 25],
- font_size: Zebra::Zpl::FontSize::SIZE_5,
- justification: Zebra::Zpl::Justification::LEFT
-)
-t2 = Zebra::Zpl::Text.new(
- data: "ZPL",
- position: [10, 65],
- font_size: Zebra::Zpl::FontSize::SIZE_5,
- justification: Zebra::Zpl::Justification::CENTER
-)
-t3 = Zebra::Zpl::Text.new(
- data: "ZPL",
- position: [10, 105],
- font_size: Zebra::Zpl::FontSize::SIZE_5,
- justification: Zebra::Zpl::Justification::RIGHT
-)
-t4 = Zebra::Zpl::Text.new(
- data: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua",
- position: [10, 180],
- font_size: Zebra::Zpl::FontSize::SIZE_4,
- justification: Zebra::Zpl::Justification::JUSTIFIED
-)
-box = Zebra::Zpl::Graphic.new(
- graphic_type: 'B',
- position: [10,5],
- graphic_width: label.width,
- graphic_height: label.length-10,
- line_thickness: 1,
- rounding_degree: 1
-)
-label << t1
-label << t2
-label << t3
-label << t4
-label << box
-print_zpl_str('justification', label)
-
-################################################################################
-# Rotation
-################################################################################
-label = new_label
-t1 = Zebra::Zpl::Text.new(
- data: "Zero",
- position: [10, 125],
- font_size: Zebra::Zpl::FontSize::SIZE_5,
- rotation: Zebra::Zpl::Rotation::NO_ROTATION,
- max_lines: 1
-)
-t2 = Zebra::Zpl::Text.new(
- data: "90",
- position: [100, 125],
- font_size: Zebra::Zpl::FontSize::SIZE_5,
- rotation: Zebra::Zpl::Rotation::DEGREES_90,
- max_lines: 1
-)
-t3 = Zebra::Zpl::Text.new(
- data: "180",
- position: [175, 125],
- font_size: Zebra::Zpl::FontSize::SIZE_5,
- rotation: Zebra::Zpl::Rotation::DEGREES_180,
- justification: Zebra::Zpl::Justification::RIGHT,
- max_lines: 1
-)
-t4 = Zebra::Zpl::Text.new(
- data: "270",
- position: [275, 125],
- font_size: Zebra::Zpl::FontSize::SIZE_5,
- rotation: Zebra::Zpl::Rotation::DEGREES_270,
- justification: Zebra::Zpl::Justification::RIGHT,
- max_lines: 1
-)
-box = Zebra::Zpl::Graphic.new(
- graphic_type: 'B',
- position: [10,5],
- graphic_width: label.width,
- graphic_height: label.length-10,
- line_thickness: 1,
- rounding_degree: 1
-)
-label << t1
-label << t2
-label << t3
-label << t4
-label.elements.each { |e| e.position = [e.x + 150, e.y] }
-label << box
-print_zpl_str('rotation', label)
+require_relative '../lib/zebra/zpl'
+
+def print_zpl_str(name, label)
+ zpl = ''
+ label.dump_contents zpl
+ puts "\n#{name}:\n#{zpl}\n\n"
+end
+
+def new_label
+ Zebra::Zpl::Label.new(
+ width: 600,
+ length: 305,
+ print_speed: 6,
+ print_density: 5,
+ copies: 1
+ )
+end
+
+################################################################################
+# Text
+################################################################################
+label = new_label
+text = Zebra::Zpl::Text.new(
+ data: "Hello, printer!",
+ position: [10, 125],
+ font_size: Zebra::Zpl::FontSize::SIZE_5,
+ justification: Zebra::Zpl::Justification::CENTER
+)
+box = Zebra::Zpl::Graphic.new(
+ graphic_type: 'B',
+ position: [10,5],
+ graphic_width: label.width,
+ graphic_height: label.length-10,
+ line_thickness: 1,
+ rounding_degree: 1
+)
+label << text
+label << box
+print_zpl_str('text', label)
+
+################################################################################
+# Raw ZPL
+################################################################################
+label = new_label
+zpl_string = "^GFA,1300,1300,13,,::::::O01IFE,N01KFE,N0MFC,M03NF,M0OFC,L03PF,L0QF8,K01QFE,K03RF,K07RF8,J01SFC,J03F9OFE7E,J07F01MFE03F,J07E007LF803F8,J0FE003KFE001FC,I01FEI0FC00FC001FE,I03FCI04M01FF,I07FCQ01FF,I07FCQ01FF8,I0FFCQ01FFC,I0FFEQ01FFC,001FFEQ01FFE,:003FFEQ03IF,003FFEQ01IF,007FFCR0IF,007FFCR0IF8,007FF8R07FF8,00IFS03FF8,00IFS03FFC,:00FFES01FFC,01FFES01FFC,01FFES01FFE,:01FFCS01FFE,:::::01FFES01FFE,::01FFES03FFE,01IFS03FFE,01IFS03FFC,01IF8R07FFC,00IF8R0IFC,00IFCR0IFC,00IFEQ01IFC,00JFQ03IF8,007IF8P07IF8,007IFCP0JF8,007JFO03JF,003F87FCN0KF,003F81FFM03JFE,001F80FFEK01KFE,001FC07FFCJ0LFC,I0FF03FF8J0LFC,I0FF03FF8J07KF8,I07F81FF8J07KF8,I03F807F8J07KF,I03FC004K07JFE,I01FCN07JFE,J0FEN07JFC,J07FN07JF8,J03F8M07JF,J01FCM07IFE,K0FFM07IFC,K07IF8J07IF8,K03IF8J07IF,L0IF8J07FFC,L07FF8J07FF8,L01FF8J07FE,M0FF8J07F8,M01F8J07E,N07K038,,::::::::::::::^FS"
+raw_zpl = Zebra::Zpl::Raw.new(
+ data: zpl_string,
+ position: [50, 50],
+)
+label << raw_zpl
+print_zpl_str('raw_zpl', label)
+
+################################################################################
+# Barcode
+################################################################################
+label = new_label
+barcode = Zebra::Zpl::Barcode.new(
+ data: 'F112358',
+ position: [80, 50],
+ height: 150,
+ width: 4,
+ print_human_readable_code: true,
+ type: Zebra::Zpl::BarcodeType::CODE_128_AUTO
+)
+label << barcode
+print_zpl_str('barcode', label)
+
+################################################################################
+# QR Code
+################################################################################
+label = new_label
+qrcode = Zebra::Zpl::Qrcode.new(
+ data: 'www.github.com',
+ position: [200, 45],
+ scale_factor: 8,
+ correction_level: 'H',
+)
+label << qrcode
+print_zpl_str('qrcode', label)
+
+################################################################################
+# Data Matrix
+################################################################################
+label = new_label
+datamatrix = Zebra::Zpl::Datamatrix.new(
+ data: 'www.github.com',
+ position: [225, 75],
+ symbol_height: 10,
+ aspect_ratio: 1
+)
+label << datamatrix
+print_zpl_str('datamatrix', label)
+
+################################################################################
+# Graphics
+################################################################################
+label = new_label
+box = Zebra::Zpl::Graphic.new(
+ graphic_type: 'B',
+ position: [10,10],
+ graphic_width: 80,
+ graphic_height: 80,
+ line_thickness: 2,
+ rounding_degree: 2
+)
+circle = Zebra::Zpl::Graphic.new(
+ graphic_type: 'C',
+ position: [100,10],
+ graphic_width: 80,
+ line_thickness: 3
+)
+diagonal1 = Zebra::Zpl::Graphic.new(
+ graphic_type: 'D',
+ position: [190,10],
+ graphic_width: 80,
+ graphic_height: 80,
+ line_thickness: 3,
+ orientation: 'R'
+)
+diagonal2 = diagonal1.dup
+diagonal2.orientation = 'L'
+ellipse = Zebra::Zpl::Graphic.new(
+ graphic_type: 'E',
+ position: [280,10],
+ graphic_width: 40,
+ graphic_height: 80,
+ line_thickness: 3
+)
+symbol = Zebra::Zpl::Graphic.new(
+ graphic_type: 'S',
+ symbol_type: 'B',
+ position: [335,10],
+ graphic_width: 80,
+ graphic_height: 80
+)
+
+label << box
+label << circle
+label << diagonal1
+label << diagonal2
+label << ellipse
+label << symbol
+label.elements.each { |e| e.position = [e.x + 110 , e.y + 90] }
+print_zpl_str('graphics', label)
+
+################################################################################
+# Images
+################################################################################
+label = new_label
+image = Zebra::Zpl::Image.new(
+ path: File.expand_path('./images/earth.jpg', File.dirname(__FILE__)),
+ position: [145, 0],
+ width: 305,
+ height: 305
+)
+label << image
+print_zpl_str('image', label)
+
+# inverted image
+label = new_label
+image = Zebra::Zpl::Image.new(
+ path: File.expand_path('./images/earth.jpg', File.dirname(__FILE__)),
+ position: [145, 0],
+ width: 305,
+ height: 305,
+ invert: true
+)
+label << image
+print_zpl_str('image_inverted', label)
+
+################################################################################
+# Image Manipulation
+################################################################################
+label = new_label
+image = Zebra::Zpl::Image.new(
+ path: File.expand_path('./images/ruby.png', File.dirname(__FILE__)),
+ position: [0, 0],
+ width: 305,
+ height: 305,
+ black_threshold: 0.65
+)
+src = image.source
+src.background('white').flatten
+
+# perform edge detection on the image
+MiniMagick::Tool::Convert.new do |convert|
+ convert << src.path
+ convert << '-colorspace' << 'gray'
+ convert << '-edge' << '4'
+ convert << '-negate'
+ convert << src.path
+end
+
+src.trim
+
+label << image
+print_zpl_str('image_manipulation', label)
+
+################################################################################
+# Justification
+################################################################################
+label = new_label
+t1 = Zebra::Zpl::Text.new(
+ data: "ZPL",
+ position: [10, 25],
+ font_size: Zebra::Zpl::FontSize::SIZE_5,
+ justification: Zebra::Zpl::Justification::LEFT
+)
+t2 = Zebra::Zpl::Text.new(
+ data: "ZPL",
+ position: [10, 65],
+ font_size: Zebra::Zpl::FontSize::SIZE_5,
+ justification: Zebra::Zpl::Justification::CENTER
+)
+t3 = Zebra::Zpl::Text.new(
+ data: "ZPL",
+ position: [10, 105],
+ font_size: Zebra::Zpl::FontSize::SIZE_5,
+ justification: Zebra::Zpl::Justification::RIGHT
+)
+t4 = Zebra::Zpl::Text.new(
+ data: "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua",
+ position: [10, 180],
+ font_size: Zebra::Zpl::FontSize::SIZE_4,
+ justification: Zebra::Zpl::Justification::JUSTIFIED
+)
+box = Zebra::Zpl::Graphic.new(
+ graphic_type: 'B',
+ position: [10,5],
+ graphic_width: label.width,
+ graphic_height: label.length-10,
+ line_thickness: 1,
+ rounding_degree: 1
+)
+label << t1
+label << t2
+label << t3
+label << t4
+label << box
+print_zpl_str('justification', label)
+
+################################################################################
+# Rotation
+################################################################################
+label = new_label
+t1 = Zebra::Zpl::Text.new(
+ data: "Zero",
+ position: [10, 125],
+ font_size: Zebra::Zpl::FontSize::SIZE_5,
+ rotation: Zebra::Zpl::Rotation::NO_ROTATION,
+ max_lines: 1
+)
+t2 = Zebra::Zpl::Text.new(
+ data: "90",
+ position: [100, 125],
+ font_size: Zebra::Zpl::FontSize::SIZE_5,
+ rotation: Zebra::Zpl::Rotation::DEGREES_90,
+ max_lines: 1
+)
+t3 = Zebra::Zpl::Text.new(
+ data: "180",
+ position: [175, 125],
+ font_size: Zebra::Zpl::FontSize::SIZE_5,
+ rotation: Zebra::Zpl::Rotation::DEGREES_180,
+ justification: Zebra::Zpl::Justification::RIGHT,
+ max_lines: 1
+)
+t4 = Zebra::Zpl::Text.new(
+ data: "270",
+ position: [275, 125],
+ font_size: Zebra::Zpl::FontSize::SIZE_5,
+ rotation: Zebra::Zpl::Rotation::DEGREES_270,
+ justification: Zebra::Zpl::Justification::RIGHT,
+ max_lines: 1
+)
+box = Zebra::Zpl::Graphic.new(
+ graphic_type: 'B',
+ position: [10,5],
+ graphic_width: label.width,
+ graphic_height: label.length-10,
+ line_thickness: 1,
+ rounding_degree: 1
+)
+label << t1
+label << t2
+label << t3
+label << t4
+label.elements.each { |e| e.position = [e.x + 150, e.y] }
+label << box
+print_zpl_str('rotation', label)