LibreOffice / barcode

LibreOffice Barcode Extension
GNU General Public License v3.0
33 stars 12 forks source link

GS1-128 (UCC EAN-128) Barcode #2

Open Marcin-wawa opened 3 years ago

Marcin-wawa commented 3 years ago

Hi, It would be very good to extend Code-128 implementation to the GS1-128 standard, which is commonly used now in package/post tracking and having capability to use it in documents, would be simply great!

GS1-128 (Formerly UCC / EAN-128) was developed to provide a global standard for exchanging data between different companies. GS1-128 not only encodes the data, but provides a method of defining the meaning of the data by defining a list of “Application Identifiers” (AI’s). GS1-128 is a derivative language of the Code 128 symbology, utilizing a flagging character (Function Code 1 (FNC1)) and application identifiers.

A typical GS1-128 barcode has the following: Code 128 start character (START-A, START-B or START-C) Code 128 FNC1 character Application Identifier (AI) Encoded Data Symbol Check character Stop Character

The difference between Code-128 and GS1-128 is possibility to define AI, so it is necessary to introduce character to identify it in the input string, and for barcode they should be identified by use of ASCII 202 character - Ê and for human readable string they should be put in brackets.

Below example of GS1-128 barcode for 00759007734798889447 GS1-128_(00)759007734798889447

Thank you for the great job you did so far with the libreoffice extension!