Use Flate (ZIP) compression in two-dimensional barcodes.

Articles about functionality of VintaSoft Barcode .NET SDK.

Moderator: Alex

Post Reply
Alex
Site Admin
Posts: 2300
Joined: Thu Jul 10, 2008 2:21 pm

Use Flate (ZIP) compression in two-dimensional barcodes.

Post by Alex »

Barcode data, which include recurrent sequences of symbols (e.g. a list of serial numbers, XML data, URLs, etc),
can be reduced in size if barcode data will be compressed using Flate compression. The reducing of barcode data size allows to:
  • reduce the physical size of barcode - this allows to use less place on the printed surface
  • enlarge the cell size of barcode matrix - this allows to decrease the quality requirements for scanning or photographing
  • increase the error correction level of barcode - this allows to increase the barcode resistance against a damage
  • encode much more data by keeping the initial physical size of barcode
There are 2 ways of using the compression in two-dimensional barcodes.

WAY 1: Compress source data and store compressed data in barcode. This is possible because two-dimensional barcodes allow to store binary data (see http://www.vintasoft.com/docs/vsbarcode ... eItem.html class).

WAY 2: * 12 of XML Forms Architecture specification (XFA) describes the rules for encoding and decoding two-dimensional barcodes using "DEFLATE Compressed Data Format" (RFC1951). Such barcodes are implemented in VintaSoft Barcode .NET SDK, and this allows easily create and recognize the barcodes with embedded data compression: Image


For example, the same data (a list of URLs) were encoded into two barcodes (Aztec and XFA Compressed Aztec):

Image

The result - the number of codewords in barcode decreased from 528 to 196.


It is necessary to note that Flate compression can increase the amount of data if there is little redundancy or if the data stream is short.
Post Reply