MicroPDF417 barcode was patented in 1996,6 by Frederick Schuessler, Kevin Hunter, Sundeep Kumar and Cary Chu from Symbol Technologies company. MicroPDF417 is an extension of PDF417 barcode7 and uses the same principles of data encoding.8 Before 2006, the standard can be obtained only from AIM store9 as ITS MicroPDF417 standard.10 At that time, it is used as part of ITS - EAN.UCC Composite Symbology.11 In 2006, MicroPDF417 standard was brought out as ISO/IEC 24728:200612 and can be used independently or as part of GS1 Composite barcode symbology.13
MicroPDF417 is mostly used to add extended data to linear barcodes. MicroPDF417 has high encoding density and in this way, it can add more additional data in lower space. At this time, it is used in inventory management and goods labeling as part of EAN.UCC Composite Symbology14 and GS1 Composite barcode symbology.15 Most of barcode printers16 and barcode scanners17 have MicroPDF417 support.
MicroPDF417 barcode symbol consists from at least two Row Address Patterns (RAP) columns which are used to detect row numbers and aligned to them Data Columns.18 MicroPDF417 barcode symbol has four versions with 1, 2, 3 and 4 data columns. The barcode can be split to the following elements:19: 5.2.3
Every MicroPDF417 barcode data column versions can be split into predefined numbers of rows which are different for every version.20: 5.2.2 Row height should be from 2 to 5 times higher than minimal module (bar or space) width.21: 5.8.2
MicroPDF417 Row Address Patterns (RAP)22: 5.2.5 are stacked into columns. Each RAP is used as indicator of row number, but RAP is not the same as row number. Every MicroPDF417 RAP consists from 10 modules, which are split to 3 black bars and 3 white spaces. Bars and spaces size can vary from 1 to 5. Each RAP row starts from black bar and ends with white space. Right RAP has additional completing black bar.
MicroPDF417 Row Address Patterns have 52 values which are used for left and right columns and 52 other values which are used only for Center columns. RAP has values from 1 to 52. One and two data columns MicroPDF417 barcode use only Left and Right RAP columns, three and four column versions additionally use Center RAP column.
All of Row Address Patterns in MicroPDF417 from Left, Right and Center columns use special sequences which are called Row Number Assignments (RNA).23: 5.11.3 The unique combination of RNA defines MicroPDF417 version and equality of current RAP number to row number.
As an example, MicroPDF417 4 columns and 4 rows version has Left RAP, which starts from 47 and ends 50, Center RAP starts from 19 and ends 22, Right RAP starts from 43 and ends 46. The combination of these 3 sequences in the same area of the image defines 4 columns and 4 rows MicroPDF417 version and gives answer which RAP number identifies current row.
MicroPDF417 Data codewords encoding is similar to PDF417 barcode. Every Data codeword24: 5.3.1 row has width of 17 modules, split to 4 black bars and 4 white spaces with variable size from 1 to 6 modules. Each codeword represents a number from 0 to 928. The set of codewords is represented in each of three clusters with numbers 0, 3 and 6.
The codeword cluster number can be counted by number of Left RAP (values from 1 to 52) in the current row with the following formula:25: 5.11.1 c l u s t e r = ( ( L e f t R A P − 1 ) ( mod 3 ) ) ∗ 3 {\displaystyle cluster=((LeftRAP-1){\pmod {3}})*3}
MicroPDF417 uses Reed–Solomon error correction.26: 5.10 Amount of error correction codewords are fixed for each barcode version.27: 5.2.2 MicroPDF417 has from 28% to 67% symbol capacity filled by errors correction codewords. MicroPDF417 error correction can recover erasures and substitution errors, where:28: 5.7.2
Here is example how all of these codewords are assembled into MicroPDF417 symbol:29: 5.11
LR(x) - Left Row Address Patterns (RAP) identifier. D(x) - Data codeword. CR(x) - Center Row Address Patterns (RAP) identifier. RR(x) - Right Row Address Patterns (RAP) identifier. E(x) - Error correction codeword.
MicroPDF417 barcode has 929 data codewords, where 900 data codewords (0 - 899) are available in each mode for data encoding and 29 (900 - 928) codewords are assigned to specific functions,30: 5.4.1 most of which defines data encoding modes. Encoding modes can be split into two encoding types: common modes for ordinary binary or text data encoding and special modes which can be used to encode special industrial modes.
MicroPDF417 common encoding modes is similar to PDF417 encoding modes and includes:31: 5.4.1.1
Any of these modes can be combined in mixed mode33: AnnexN to obtain better data compaction and reduce MicroPDF417 symbol size.
MicroPDF417 can encode data in special industrial modes,34: 5.4.1.5 which includes:
MicroPDF417 barcode allows to add metadata41: AnnexH to the barcode symbol which can add description of current barcode symbol. However, because MicroPDF417 has restricted amount of capacity it is used rarely. Some structured append fields cannot be omitted and set in case structured append is added to the symbol, some fields are optional. Possible structured append fields you can see in the following table:
Frederick Schuessler; Kevin Hunter; Sundeep Kumar; Cary Chu (16 October 1996). "United States Patent US5811787A by Symbol Technologies LLC "Two-dimensional bar code symbology using implicit version information encoding"". patents.google.com. United States Patent and Trademark Office. https://patents.google.com/patent/US5811787A ↩
Theodosios Pavlidis; Yajium P. Wang; Jerome Swartz (5 January 1990). "United States Patent US5811787A by Symbol Technologies LLC "High density two-dimensional bar code symbol"". patents.google.com. United States Patent and Trademark Office. https://patents.google.com/patent/US5304786 ↩
ISO/IEC (2020). "ISO/IEC 24728:2006 "Information technology Automatic identification and data capture techniques MicroPDF417 bar code symbology specification"". iso.org. International Organization for Standardization(ISO). ISO/IEC 24728. https://www.iso.org/standard/38838.html ↩
"Beginners Guide to 2-D Barcodes" (PDF). www.identifydirect.com. Identify Direct Ltd. p. 19. https://www.identifydirect.com/wp-content/uploads/2021/03/Beginners-Guide-to-2D-Barcodes_a.pdf#page=19 ↩
ISO/IEC (2023). "ISO/IEC 24723:2010 "Information technology Automatic identification and data capture techniques GS1 Composite bar code symbology specification"". iso.org. International Organization for Standardization(ISO). ISO/IEC 24723. https://www.iso.org/standard/51425.html ↩
Hiroko Kato (2005). "2D-barcode for mobile devices". Theses: Honours. Edith Cowan University: 23. https://ro.ecu.edu.au/theses_hons/1388/ ↩
"AIMstore". www.aimglobal.org. Archived from the original on 2002-06-14. http://web.archive.org/web/20020614111701/http://www.aimglobal.org/aimstore/ ↩
"Stacked Bar Code Symbologies". www.aimglobal.org. Archived from the original on 2002-08-18. http://web.archive.org/web/20020818112026/http://www.aimglobal.org/aimstore/stackedsymbologies.htm#micropdf417 ↩
"Composite Overview". www.aimglobal.org. Archived from the original on 2002-06-15. http://web.archive.org/web/20020615030209/http://www.aimglobal.org/standards/symbinfo/composite_overview.htm ↩
"Barcode Printer TSC BARCODE PRINTER Series" (PDF). tscprinters.com. https://fs.tscprinters.com/system/files/31-0000001-00_tspl_tspl2_programming_e.pdf#page=72 ↩
"M-10 2D CMOS Imager Presentation Scanner" (PDF). www.opticonusa.com. https://www.opticonusa.com/assets/documents/datasheets/Opticon%20M-10%20Datasheet.pdf#page=2 ↩
Hiroko Kato; Keng T. Tan; Douglas Chai (8 April 2010). Barcodes for Mobile Devices. Cambridge University Press, 2010. p. 34. ISBN 978-1139487511. 978-1139487511 ↩
"GS1 Application Identifiers". www.gs1.org. https://ref.gs1.org/ai/ ↩
ISO/IEC (2019). "ISO/IEC 15434:2019 "Information technology Automatic identification and data capture techniques Syntax for high-capacity ADC media"". iso.org. International Organization for Standardization(ISO). ISO/IEC 15434. https://www.iso.org/standard/72372.html ↩
"Generate PDF417 and Micro PDF417 Barcodes in C#". www.aspose.com. https://docs.aspose.com/barcode/net/pdf417-barcodes/#micro-pdf417-code-128-emulation-mode ↩