1
0
mirror of https://git.code.sf.net/p/zint/code synced 2026-05-14 18:13:53 +00:00

AZTEC: use algorithm adapted from ZXing for optimized encodation

(ticket #347), props Frank Yellin and Rustam Abdullaev;
   also improve performance of `FAST_MODE`
DATAMATRIX: assert max size on `edges` will fit in unsigned short;
   use MASK for DMRE/SQUARE `option_3` setting
PDF417: assert max size on `edges` will fit in unsigned short
GUI: fix setting AZTEC size and ECC combos if not previously set
manual: fix not mentioning AZTEC re `FAST_MODE`;
  gs1 mode footnote: mention 3940's length; pandoc -> 3.9
test suite: DOTCODE: account for new BWIPP input length guard
This commit is contained in:
gitlost
2026-03-11 15:48:24 +00:00
parent ee71a5cc56
commit b3a3c0d3b4
19 changed files with 3668 additions and 1558 deletions

View File

@@ -1,6 +1,6 @@
% Zint Barcode Generator and Zint Barcode Studio User Manual
% Version 2.16.0.9
% February 2026
% March 2026
# 1. Introduction
@@ -1289,7 +1289,7 @@ Interpretations) mechanism to encode the data if the symbology supports it - see
GS1 data can be encoded in a number of symbologies - see [4.11.3 GS1 Data Entry
and Options].
Health Industry Barcode (HIBC) data may also be encoded in the symbologies Aztec
Health Industry Barcode (HIBC) data may be encoded in the symbologies Aztec
Code, Codablock-F, Code 128, Code 39, Data Matrix, MicroPDF417, PDF417 and QR
Code. Within this mode, the leading `'+'` and the check character are
automatically added by Zint, conforming to HIBC Labeler Identification Code
@@ -1550,8 +1550,8 @@ last) **apart** from those whose **first two digits** match the following: 00,
01, 02, 03, 11, 12, 13, 15, 16, 17, 20, 31, 32, 33, 34, 35, 36 and 41, as
specified in GS1 General Specifications 26.0 Table 7-6 "Element strings with
predefined length using GS1 Application Identifiers". Note that this applies
even to AIs with fixed lengths, so e.g. the data for AI 3940 must have a
terminating `FNC1` (except when the last AI).
even to AIs with fixed lengths, so e.g. the data for AI 3940, which has a fixed
length of 4, must have a terminating `FNC1` (except when the last AI).
The final way to specify input is the related "raw" mode using the `--gs1raw`
option. Here `FNC1`s are indicated by Group Separators (`GS`, ASCII 29, escape
@@ -2517,7 +2517,7 @@ Value Effect
as overall height.
`FAST_MODE` Use faster if less optimal encodation or other
shortcuts if available (affects `DATAMATRIX`,
shortcuts if available (affects `AZTEC`, `DATAMATRIX`,
`MICROPDF417`, `PDF417`, `QRCODE` and `UPNQR` only).
`EXTRA_ESCAPE_MODE` Process special symbology-specific escape sequences
@@ -2572,9 +2572,9 @@ For `HEIGHTPERROW_MODE`, see `--heightperrow` in section [4.4 Adjusting Height].
The `height` member should be set to the desired per-row value on input (it will
be set to the overall height on output).
`FAST_MODE` causes a less optimal encodation scheme to be used for Data Matrix,
MicroPDF417 and PDF417. For QR Code and UPNQR, it limits Zint's automatic mask
selection - see [6.6.3 QR Code (ISO 18004)] for details.
`FAST_MODE` causes a less optimal encodation scheme to be used for Aztec Code,
Data Matrix, MicroPDF417 and PDF417. For QR Code and UPNQR, it limits Zint's
automatic mask selection - see [6.6.3 QR Code (ISO 18004)] for details.
## 5.12 Multiple Segments
@@ -3972,8 +3972,9 @@ followed by 1, 2 or 3 for CC-A, CC-B or CC-C respectively.
This system uses a variation of MicroPDF417 which is optimised to fit into a
small space. The size of the 2D component and the amount of error correction is
determined by the amount of data to be encoded and the type of linear component
which is being used. CC-A can encode up to 56 numeric digits or an alphanumeric
string of shorter length. To select CC-A use `--mode=1` (API `option_1 = 1`).
which is being used. CC-A can encode up to 56 numeric digits (including AIs) or
an alphanumeric string of shorter length (e.g. if all capitals, at most 30,
excluding AI). To select CC-A use `--mode=1` (API `option_1 = 1`).
![`zint -b EAN13_CC --compliantheight -d "[99]1234-abcd" --mode=1
--primary=331234567890`](images/ean13_cc_a.svg){.upcean}