Difference between revisions of "LazBarcodes"

From Lazarus wiki
Jump to navigationJump to search
(→‎About: Codes 3-of-9)
Line 4: Line 4:
 
The library supports the generation of 1D and 2D barcodes:
 
The library supports the generation of 1D and 2D barcodes:
  
* '''1D barcodes'''
+
==== 1D barcodes ====
** [[Image:tbarcodec11.png]] <tt>TBarcodeC11</tt>:  
+
* [[Image:tbarcodec11.png]] <tt>TBarcodeC11</tt>:  
*** [https://en.wikipedia.org/wiki/Code_11 '''Code-11''']: max 121 numeric characters (<tt>'0'..'9'</tt>)
+
** [https://en.wikipedia.org/wiki/Code_11 '''Code-11''']: max 121 numeric characters (<tt>'0'..'9'</tt>)
  
** [[Image:tbarcodec128.png]] <tt>TBarcodeC128</tt>: Property <tt>BarcodeType</tt> allows to select one of the subsets:
+
* [[Image:tbarcodec128.png]] <tt>TBarcodeC128</tt>: Property <tt>BarcodeType</tt> allows to select one of the subsets:
*** [https://en.wikipedia.org/wiki/Code_128 '''Code-128''']: max 160 text characters (ASCII)
+
** [https://en.wikipedia.org/wiki/Code_128 '''Code-128''']: max 160 text characters (ASCII)
*** [https://en.wikipedia.org/wiki/GS1-128 '''UPC/EAN-128''', also known as '''GS1-128''']]: variable length depending on "Application Identifier" to be given in square brackets.  
+
** [https://en.wikipedia.org/wiki/GS1-128 '''UPC/EAN-128''', also known as '''GS1-128''']]: variable length depending on "Application Identifier" to be given in square brackets.  
  
** [[Image:tbarcode2of5.png]] <tt>TBarcode2of5</tt>: Property <tt>BarcodeType</tt> allows to select one of the following subsets:
+
* [[Image:tbarcode2of5.png]] <tt>TBarcode2of5</tt>: Property <tt>BarcodeType</tt> allows to select one of the following subsets:
*** [https://en.wikipedia.org/wiki/Matrix_2_of_5 '''DataLogic 2-of-5''']: up to 80 numerical digits
+
** [https://en.wikipedia.org/wiki/Matrix_2_of_5 '''DataLogic 2-of-5''']: up to 80 numerical digits
*** [https://en.wikipedia.org/wiki/Industrial_2_of_5#IATA_2_of_5 '''IATA_2_of_5''']: up to 45 numerical digits
+
** [https://en.wikipedia.org/wiki/Industrial_2_of_5#IATA_2_of_5 '''IATA_2_of_5''']: up to 45 numerical digits
*** [https://en.wikipedia.org/wiki/Industrial_2_of_5 '''Industrial 2-of-5''']: up to 45 numerical digits
+
** [https://en.wikipedia.org/wiki/Industrial_2_of_5 '''Industrial 2-of-5''']: up to 45 numerical digits
*** [https://en.wikipedia.org/wiki/Interleaved_2_of_5 '''Interleaved 2-of-5''']: up to 89 numerical digits
+
** [https://en.wikipedia.org/wiki/Interleaved_2_of_5 '''Interleaved 2-of-5''']: up to 89 numerical digits
*** [https://en.wikipedia.org/wiki/Matrix_2_of_5 '''Matrix 2-of-5''']: up to 80 numerical digits
+
** [https://en.wikipedia.org/wiki/Matrix_2_of_5 '''Matrix 2-of-5''']: up to 80 numerical digits
*** [https://en.wikipedia.org/wiki/ITF-14 '''ITF-14''']: up to 13 numerical digits
+
** [https://en.wikipedia.org/wiki/ITF-14 '''ITF-14''']: up to 13 numerical digits
  
** [[tbarcode3of9.png]] <tt>TBarcode3of9</tt>: supports the following subsets (Property <tt>BarcodeType</tt>):
+
* [[Image:tbarcode3of9.png]] <tt>TBarcode3of9</tt>: supports the following subsets via property <tt>BarcodeType</tt>:
*** [https://en.wikipedia.org/wiki/Code_39 '''Code 3-of-9 (C39)''']: up to 74 characters: numeric, uppercase-alpha and some special characters (<tt>-. $/+%abcd</tt>).
+
** [https://en.wikipedia.org/wiki/Code_39 '''Code 3-of-9 (C39)''']: up to 74 characters: numeric, uppercase-alpha and some special characters (<tt>-. $/+%abcd</tt>).
*** [https://en.wikipedia.org/wiki/Code_39#Full_ASCII_Code_39 '''Extended Code 3-of-9 (C39+)''']: up to 74 characters, all ASCII characters allowed (<tt><#128</tt>).
+
** [https://en.wikipedia.org/wiki/Code_39#Full_ASCII_Code_39 '''Extended Code 3-of-9 (C39+)''']: up to 74 characters, all ASCII characters allowed (<tt>< #128</tt>).
*** '''LOGMARS''': like C39, different wide bar width.
+
** '''LOGMARS''': like C39, different wide bar width.
*** [https://en.wikipedia.org/wiki/Code_93 '''Code-93''']: up to 107 characters. Allowed characters like C39.
+
** [https://en.wikipedia.org/wiki/Code_93 '''Code-93''']: up to 107 characters. Allowed characters like C39.
  
* '''2D barcodes'''
+
==== 2D barcodes ====
**[[Image:Tbarcodeqr.png‎]] <tt>TLazBarcodeQR</tt>: [http://en.wikipedia.org/wiki/Qr_code '''QR Code''']
+
*[[Image:Tbarcodeqr.png‎]] <tt>TLazBarcodeQR</tt>: [http://en.wikipedia.org/wiki/Qr_code '''QR Code''']
**[[Image:Tbarcodemicroqr.png]] <tt>TLazBarcodeMicroQR</tt>: [http://en.wikipedia.org/wiki/Qr_code#Variants '''MicroQR''']
+
*[[Image:Tbarcodemicroqr.png]] <tt>TLazBarcodeMicroQR</tt>: [http://en.wikipedia.org/wiki/Qr_code#Variants '''MicroQR''']
**[[Image:Tbarcodeaztec.png]] <tt>TLazBarcodeAztec</tt>: [http://en.wikipedia.org/wiki/Aztec_Code '''Aztec Code''']
+
*[[Image:Tbarcodeaztec.png]] <tt>TLazBarcodeAztec</tt>: [http://en.wikipedia.org/wiki/Aztec_Code '''Aztec Code''']
**[[Image:Tbarcodeaztecrune.png]] <tt>TLazBarcodeAztecRun</tt>: [http://en.wikipedia.org/wiki/Aztec_Code#Encoding '''Aztec Rune''']
+
*[[Image:Tbarcodeaztecrune.png]] <tt>TLazBarcodeAztecRun</tt>: [http://en.wikipedia.org/wiki/Aztec_Code#Encoding '''Aztec Rune''']
**[[Image:Tbarcodedatamatrix.png]] <tt>TLazBarcodeDataMatrix</tt>: [http://en.wikipedia.org/wiki/Data_Matrix '''DataMatrix''']
+
*[[Image:Tbarcodedatamatrix.png]] <tt>TLazBarcodeDataMatrix</tt>: [http://en.wikipedia.org/wiki/Data_Matrix '''DataMatrix''']
 
   
 
   
 
The download contains the packages "lazbarcodes" and "lazbarcodes_runtimeonly". The first one gives you visual components of the above barcodes and the second can be used just to access the ported zint code for advanced barcode generation.
 
The download contains the packages "lazbarcodes" and "lazbarcodes_runtimeonly". The first one gives you visual components of the above barcodes and the second can be used just to access the ported zint code for advanced barcode generation.

Revision as of 19:18, 20 February 2022

About

LazBarcodes is a set of controls to create 1D and 2D barcodes. The backend engine is a port of Zint at sourceforge. Some units were heavily refactored to obtain a more Pascal-like code.

The library supports the generation of 1D and 2D barcodes:

1D barcodes

  • tbarcodec11.png TBarcodeC11:
    • Code-11: max 121 numeric characters ('0'..'9')
  • tbarcodec128.png TBarcodeC128: Property BarcodeType allows to select one of the subsets:
  • tbarcode3of9.png TBarcode3of9: supports the following subsets via property BarcodeType:
    • Code 3-of-9 (C39): up to 74 characters: numeric, uppercase-alpha and some special characters (-. $/+%abcd).
    • Extended Code 3-of-9 (C39+): up to 74 characters, all ASCII characters allowed (< #128).
    • LOGMARS: like C39, different wide bar width.
    • Code-93: up to 107 characters. Allowed characters like C39.

2D barcodes

The download contains the packages "lazbarcodes" and "lazbarcodes_runtimeonly". The first one gives you visual components of the above barcodes and the second can be used just to access the ported zint code for advanced barcode generation.

Screenshot

lazbarcodes demo.png

Author

2011 - Jose Mejuto

License

BSD 3 as it is being inherited from the zint source code.

Download

The latest source code can be found on Lazarus-CCR

Change Log

  • v1.0.3: Internally used units renamed to avoid naming conflict with CodeTyphon package PL_APE.
  • v1.0.2: Change of license from GPL to BSD
  • Initial development.

Dependencies / System Requirements

  • None

Status: In development

Issues: None by now.

Installation

  • Step 1: Compile the package "lazbarcodes_runtimeonly".
  • Step 2: Install the package "lazbarcodes".

Final notes

If you need the generation of another barcode and it is present in Zint, please ask for it in the Lazarus forum or mailing lists.