1
0
mirror of https://git.code.sf.net/p/zint/code synced 2026-06-10 07:33:43 +00:00
template, props Dmitry Smirnov (ticket #147, props John Crisp);
  TODO: enable building with the GS1 Syntax Engine;
  this involved auditing copyrights which prompted the next item
  re "tif.c" and will prompt the next next item "pdf417.c"
tif.c: replaced LZW compression with tree-based one due to
  "tif_lzw.h"'s original BSD-TAHOE license which has the equivalent
  of the "advertising clause", new implementation (which is much
  faster anyway) props Harald Kuhr and Bob Montgomery
pdf417.c: TODO: Replace all code adapted from "pdf417.frm" as it
  was released under GPL v2.0 or later
pdf417.h: replace unnecessary "pdf417.frm" references with ISO/IEC
  standard as 1st step re above, some expanded comments
general: Codablock-F -> Codablock F (i.e. lose hyphen)
cmake: frontend/frontend_qt: go back to only setting RPATH on macOS
  as not Debian compatible and it seems it's not a good idea on
  Linux anyway; TODO: check BSD + other Unixes
CLI/GUI: make "--verbose" option official and document
tools/gen_eci_sb_h.php/gen_eci_mb_h.php: add SPDX Unicode-3.0;
  update haible.de/bruno tarball info - "GB18030.TXT" no longer in
  "jdk-1.4.2/" so mention "libiconv-1.11/" version instead (same)
general: add various SPDXs and normalize some Copyrights
reedsol.c: malloced `logt`/`alog` tables int -> short (slight
  performance improvement)
aztec.c: add copyrights, some code fiddling
BWIPP: update to latest
This commit is contained in:
gitlost
2026-03-18 15:08:32 +00:00
parent db03f0b304
commit df64a0f237
70 changed files with 1404 additions and 755 deletions
+15 -4
View File
@@ -1,9 +1,13 @@
# Makefile for generating "manual.txt" and "manual.pdf" from "manual.pmd" and "zint.1" from "zint.1.pmd" using pandoc
# Copyright (C) 2022-2025 <rstuart114@gmail.com>
# Makefile for generating:
# "manual.html", "manual.pdf" and "manual.txt" from "manual.pmd"
# "zint.1" from "zint.1.pmd"
# "zint-qt.1" from "zint-qt.1.pmd"
# using pandoc
# Copyright (C) 2022-2026 <rstuart114@gmail.com>
# vim: set ts=4 sw=4 noet :
#
# Requires pandoc >= 3.8.2, plus xelatex and various other packages - see "README"
# .svg images generated by "zint_images.sh"
# "images/*.svg" generated by "zint_images.sh"
SOURCE = manual.pmd
OUT_PDF = manual.pdf
@@ -17,6 +21,8 @@ INCLUDES_TXT = inc_header_txt.tex
INC_TXT = --include-in-header $(INCLUDES_TXT)
SOURCE_MAN_PAGE = zint.1.pmd
OUT_MAN_PAGE = zint.1
SOURCE_QT_MAN_PAGE = zint-qt.1.pmd
OUT_QT_MAN_PAGE = zint-qt.1
LUA_FILTER = lua-crossrefs/lua-crossrefs.lua
INFRASTRUCTURE = Makefile $(LUA_FILTER) $(HIGHLIGHT_THEME)
IMAGES = \
@@ -160,7 +166,7 @@ TXT_OPTS = --lua-filter=$(LUA_FILTER) \
--columns 80 --eol=lf -t plain
MAN_PAGE_OPTS = -s -t man
all : $(OUT_PDF) $(OUT_TXT) $(OUT_MAN_PAGE) $(OUT_HTML)
all : $(OUT_PDF) $(OUT_TXT) $(OUT_MAN_PAGE) $(OUT_QT_MAN_PAGE) $(OUT_HTML)
$(OUT_PDF) : $(SOURCE) $(SOURCE_MAN_PAGE) $(INC_HEADER_PDF) $(INC_BEFORE_BODY_PDF) $(IMAGES) $(INFRASTRUCTURE)
pandoc $(SOURCE_MAN_PAGE) -f markdown \
@@ -195,6 +201,11 @@ $(OUT_MAN_PAGE) : $(SOURCE_MAN_PAGE) $(INFRASTRUCTURE)
$(MAN_PAGE_OPTS) \
-o $(OUT_MAN_PAGE)
$(OUT_QT_MAN_PAGE) : $(SOURCE_QT_MAN_PAGE) $(INFRASTRUCTURE)
pandoc $(SOURCE_QT_MAN_PAGE) -f markdown \
$(MAN_PAGE_OPTS) \
-o $(OUT_QT_MAN_PAGE)
# For debugging
manual.tex : $(SOURCE) $(SOURCE_MAN_PAGE) $(INC_HEADER_PDF) $(INC_BEFORE_BODY_PDF) $(IMAGES) $(INFRASTRUCTURE)
+3 -2
View File
@@ -1,7 +1,8 @@
% docs/README 2026-03-11
% docs/README 2026-03-17
For generation of "docs/manual.html", "docs/manual.pdf" and "docs/manual.txt" from "manual.pmd"
and man page "docs/zint.1" from "docs/zint.1.pmd" using pandoc >= 3.8.2.
and man pages "docs/zint.1" from "docs/zint.1.pmd" and "docs/zint-qt.1" from "docs/zint-qt.1.pmd"
using pandoc >= 3.8.2.
On Ubuntu/Debian (tested on Ubuntu 22.04 and Ubuntu 24.04)
+2 -2
View File
@@ -1,8 +1,8 @@
-- libzint - the open source barcode library
-- Copyright (C) 2025 Robin Stuart <rstuart114@gmail.com>
-- Copyright (C) 2025-2026 Robin Stuart <rstuart114@gmail.com>
-- Hacked from https://github.com/rnwst/pandoc-lua-crossrefs
-- © 2025 R. N. West. Released under the GPL version 2 or greater.
-- Copyright © 2025 R. N. West. Released under the GPL version 2 or greater.
-- SPDX-License-Identifier: GPL-2.0-or-later
PANDOC_VERSION:must_be_at_least '3.8.2'
+32 -20
View File
@@ -504,6 +504,7 @@ id="toc-utf-8-to-eci-convenience-functions">5.17 UTF-8 to ECI
convenience functions</a></li>
<li><a href="#zint-version" id="toc-zint-version">5.18 Zint
Version</a></li>
<li><a href="#debug-info" id="toc-debug-info">5.19 Debug Info</a></li>
</ul></li>
<li><a href="#types-of-symbology" id="toc-types-of-symbology">6. Types
of Symbology</a>
@@ -631,8 +632,8 @@ Stacked Symbologies</a>
<ul>
<li><a href="#basic-symbol-stacking"
id="toc-basic-symbol-stacking">6.2.1 Basic Symbol Stacking</a></li>
<li><a href="#codablock-f" id="toc-codablock-f">6.2.2
Codablock-F</a></li>
<li><a href="#codablock-f" id="toc-codablock-f">6.2.2 Codablock
F</a></li>
<li><a href="#code-16k-en-12323" id="toc-code-16k-en-12323">6.2.3 Code
16K (EN 12323)</a></li>
<li><a href="#pdf417-iso-15438" id="toc-pdf417-iso-15438">6.2.4 PDF417
@@ -1866,7 +1867,7 @@ DataBar Truncated)</td>
<tr>
<td style="text-align: left;">74</td>
<td style="text-align: left;"><code>BARCODE_CODABLOCKF</code></td>
<td style="text-align: left;">Codablock-F</td>
<td style="text-align: left;">Codablock F</td>
</tr>
<tr>
<td style="text-align: left;">75</td>
@@ -1986,7 +1987,7 @@ DataBar Truncated)</td>
<tr>
<td style="text-align: left;">110</td>
<td style="text-align: left;"><code>BARCODE_HIBC_BLOCKF</code></td>
<td style="text-align: left;">HIBC Codablock-F</td>
<td style="text-align: left;">HIBC Codablock F</td>
</tr>
<tr>
<td style="text-align: left;">112</td>
@@ -2154,7 +2155,7 @@ class="sourceCode bash"><code class="sourceCode bash"><span id="cb25-1"><a href=
<span id="cb25-2"><a href="#cb25-2" aria-hidden="true" tabindex="-1"></a><span class="ex">Warning</span> 247: Height not compliant with standards</span></code></pre></div>
<p>Another switch is <code>--heightperrow</code>, which can be useful
for symbologies that have a variable number of linear rows, namely
Codablock-F, Code 16K, Code 49, GS1 DataBar Expanded Stacked,
Codablock F, Code 16K, Code 49, GS1 DataBar Expanded Stacked,
MicroPDF417 and PDF417, as it changes the treatment of the height value
from overall height to per-row height, allowing you to specify a
consistent height for each linear row without having to know how many
@@ -2193,7 +2194,7 @@ class="sourceCode bash"><code class="sourceCode bash"><span id="cb29-1"><a href=
zones compliant with the symbologys specification. This is in addition
to any whitespace specified with the <code>--whitesp</code> or
<code>--vwhitesp</code> switches.</p>
<p>Note that Codablock-F, Code 16K, Code 49, ITF-14, EAN-13, EAN-8,
<p>Note that Codablock F, Code 16K, Code 49, ITF-14, EAN-13, EAN-8,
EAN/UPC add-ons, ISBN, UPC-A and UPC-E have compliant quiet zones added
by default. This can be disabled with the option
<code>--noquietzones</code>.</p>
@@ -2231,7 +2232,7 @@ alt="zint -b QRCODE --border=1 --box -d &quot;This Text&quot; --quietzones" />
<figcaption><span class="figure-label">Figure 16:</span>
<code>zint -b QRCODE --border=1 --box -d "This Text" --quietzones</code></figcaption>
</figure>
<p>Codablock-F, Code 16K and Code 49 always have boundary bars, and
<p>Codablock F, Code 16K and Code 49 always have boundary bars, and
default to particular horizontal whitespace values. Special
considerations apply to ITF-14 and DPD - see <a href="#itf-14">6.1.2.6
ITF-14</a> and <a href="#dpd-code">6.1.10.7 DPD Code</a> for those
@@ -2506,7 +2507,7 @@ Sets</caption>
<td>None</td>
</tr>
<tr>
<td style="text-align: left;">Codablock-F</td>
<td style="text-align: left;">Codablock F</td>
<td style="text-align: left;">Latin-1</td>
<td>None</td>
</tr>
@@ -2602,7 +2603,7 @@ Modes and ECI</a> below.</p>
href="#gs1-data-entry-and-options">4.11.3 GS1 Data Entry and
Options</a>.</p>
<p>Health Industry Barcode (HIBC) data may be encoded in the symbologies
Aztec Code, Codablock-F, Code 128, Code 39, Data Matrix, MicroPDF417,
Aztec Code, Codablock F, Code 128, Code 39, Data Matrix, MicroPDF417,
PDF417 and QR Code. Within this mode, the leading <code>'+'</code> and
the check character are automatically added by Zint, conforming to HIBC
Labeler Identification Code (HIBC LIC). For HIBC Provider Applications
@@ -3298,6 +3299,8 @@ hexadecimal values if asked to output to a text file
(<code>"*.txt"</code>) or if given the option
<code>--filetype=txt</code> or the option <code>--dump</code>. This can
be used for test and diagnostic purposes.</p>
<p>Also theres the <code>--verbose</code> option which will output
debug information to <code>stdout</code>.</p>
<p>Additional options are available which are specific to certain
symbologies. These may, for example, control the amount of error
correction data or the size of the symbol. These options are discussed
@@ -4411,7 +4414,7 @@ For instance:</p>
<span id="cb87-2"><a href="#cb87-2" aria-hidden="true" tabindex="-1"></a><span class="cf">if</span> <span class="op">(</span>ZBarcode_BarcodeName<span class="op">(</span>BARCODE_PDF417<span class="op">,</span> name<span class="op">)</span> <span class="op">==</span> <span class="dv">0</span><span class="op">)</span> <span class="op">{</span></span>
<span id="cb87-3"><a href="#cb87-3" aria-hidden="true" tabindex="-1"></a> printf<span class="op">(</span><span class="st">&quot;</span><span class="sc">%s\n</span><span class="st">&quot;</span><span class="op">,</span> name<span class="op">);</span></span>
<span id="cb87-4"><a href="#cb87-4" aria-hidden="true" tabindex="-1"></a><span class="op">}</span></span></code></pre></div>
<p>will print <code>BARCODE_PDF417</code>.</p>
<p>will print BARCODE_PDF417.</p>
<h2 id="checking-symbology-capabilities">5.15 Checking Symbology
Capabilities</h2>
<p>It can be useful for frontend programs to know the capabilities of a
@@ -4607,6 +4610,11 @@ available, else zero.</p>
<div class="sourceCode" id="cb93"><pre class="sourceCode c"><code class="sourceCode c"><span id="cb93-1"><a href="#cb93-1" aria-hidden="true" tabindex="-1"></a><span class="dt">int</span> ZBarcode_Version<span class="op">(</span><span class="dt">void</span><span class="op">);</span></span></code></pre></div>
<p>The version parts are separated by hundreds. For instance, version
<code>"2.9.1"</code> is returned as <code>"20901"</code>.</p>
<h2 id="debug-info">5.19 Debug Info</h2>
<p>Debugging information can be output to <code>stdout</code> by setting
the <code>debug</code> member to <code>ZINT_DEBUG_PRINT</code>
(<code>1</code>). Other values are used internally by the test suite and
shouldnt be set.</p>
<h1 id="types-of-symbology">6. Types of Symbology</h1>
<h2 id="one-dimensional-symbols">6.1 One-Dimensional Symbols</h2>
<p>One-dimensional or linear symbols are what most people associate with
@@ -5581,7 +5589,7 @@ alt="zint --notext --bind --separator=2 -d &quot;This&quot; -d &quot;That&quot;"
<p>A more sophisticated method is to use some type of line indexing
which indicates to the barcode reader which order the stacked symbols
should be read in. This is demonstrated by the symbologies below.</p>
<h3 id="codablock-f">6.2.2 Codablock-F</h3>
<h3 id="codablock-f">6.2.2 Codablock F</h3>
<p>This is a stacked symbology based on Code 128 which can encode
Latin-1 data up to a maximum length of 2726 symbol characters, meaning
for instance up to 2726 all ASCII characters, or 5452 all numeric, or up
@@ -5592,12 +5600,12 @@ alt="zint -b CODABLOCKF -d &quot;CODABLOCK F Symbology&quot; --rows=3" />
<figcaption><span class="figure-label">Figure 84:</span>
<code>zint -b CODABLOCKF -d "CODABLOCK F Symbology" --rows=3</code></figcaption>
</figure>
<p>The width of the Codablock-F symbol can be set using the
<p>The width of the Codablock F symbol can be set using the
<code>--cols</code> option (API <code>option_2</code>), to a value
between 9 and 67. The height (number of rows) can be set using the
<code>--rows</code> option (API <code>option_1</code>), with a maximum
of 44. Zint does not currently support encoding of GS1 data in
Codablock-F symbols.</p>
of 44. Zint does not currently support encoding of GS1 data in Codablock
F symbols.</p>
<p>A separate symbology ID (<code>BARCODE_HIBC_BLOCKF</code>) can be
used to encode Health Industry Barcode (HIBC) data which adds a leading
<code>'+'</code> character and a modulo-49 check digit to the encoded
@@ -8543,7 +8551,7 @@ Silicon Wafers (BC412) (1996)</li>
Code</li>
<li>BS EN 798:1996 Bar coding - Symbology specifications -
Codabar</li>
<li>AIM Europe ISS-X-24 - Uniform Symbology Specification Codablock-F
<li>AIM Europe ISS-X-24 - Uniform Symbology Specification Codablock F
(1995)</li>
<li>ISO/IEC 15417:2007 Information technology - Automatic identification
and data capture techniques - Code 128 bar code symbology
@@ -9217,7 +9225,7 @@ the <code>--border</code> option.</p>
<dt><code>--cols=INTEGER</code></dt>
<dd>
<p>Set the number of data columns in the symbol to <em>INTEGER</em>.
Affects Codablock-F, DotCode, GS1 DataBar Expanded Stacked
Affects Codablock F, DotCode, GS1 DataBar Expanded Stacked
(DBAR_EXPSTK), MicroPDF417 and PDF417 symbols.</p>
</dd>
<dt><code>--compliantheight</code></dt>
@@ -9413,7 +9421,7 @@ floating-point.</p>
</dd>
<dt><code>--heightperrow</code></dt>
<dd>
<p>Treat height as per-row. Affects Codablock-F, Code 16K, Code 49, GS1
<p>Treat height as per-row. Affects Codablock F, Code 16K, Code 49, GS1
DataBar Expanded Stacked (DBAR_EXPSTK), MicroPDF417 and PDF417.</p>
</dd>
<dt><code>-i</code>, <code>--input=FILE</code></dt>
@@ -9502,7 +9510,7 @@ can be 0, 90, 270 or 360.</p>
</dd>
<dt><code>--rows=INTEGER</code></dt>
<dd>
<p>Set the number of rows for Codablock-F or PDF417 to <em>INTEGER</em>.
<p>Set the number of rows for Codablock F or PDF417 to <em>INTEGER</em>.
It will also set the minimum number of rows for Code 16K or Code 49, and
the maximum number of rows for GS1 DataBar Expanded Stacked
(DBAR_EXPSTK).</p>
@@ -9594,6 +9602,10 @@ names can be used with <code>-b</code> | <code>--barcode</code>.</p>
<em>NUMBER</em> is in X-dimensions, and may be floating-point. Maximum
is 10 and minimum is -5. The default is 1.</p>
</dd>
<dt><code>--verbose</code></dt>
<dd>
<p>Output debug information to stdout.</p>
</dd>
<dt><code>--vers=INTEGER</code></dt>
<dd>
<p>Set the symbol version (size, check digits, other options) to
@@ -9967,10 +9979,10 @@ role="doc-backlink">↩︎</a></p></li>
default for DPD - see <a href="#dpd-code">6.1.10.7 DPD Code</a>.<a
href="#fnref15" class="footnote-back" role="doc-backlink">↩︎</a></p></li>
<li id="fn16"><p>The <code>BARCODE_BIND</code> flag is always set for
Codablock-F, Code 16K and Code 49. Special considerations apply to
Codablock F, Code 16K and Code 49. Special considerations apply to
ITF-14 - see <a href="#itf-14">6.1.2.6 ITF-14</a>.<a href="#fnref16"
class="footnote-back" role="doc-backlink">↩︎</a></p></li>
<li id="fn17"><p>Codablock-F, Code 16K, Code 49, EAN-13, EAN-8, EAN/UPC
<li id="fn17"><p>Codablock F, Code 16K, Code 49, EAN-13, EAN-8, EAN/UPC
add-ons, ISBN, ITF-14, UPC-A and UPC-E have compliant quiet zones added
by default.<a href="#fnref17" class="footnote-back"
role="doc-backlink">↩︎</a></p></li>
+25 -14
View File
@@ -2,6 +2,8 @@
% Version 2.16.0.9
% March 2026
[//]: # ( vim: set ts=4 sw=4 et : )
# 1. Introduction
The Zint project aims to provide a complete cross-platform open source barcode
@@ -781,7 +783,7 @@ Value
73 `BARCODE_VIN` Vehicle Identification Number
74 `BARCODE_CODABLOCKF` Codablock-F
74 `BARCODE_CODABLOCKF` Codablock F
75 `BARCODE_NVE18` NVE-18 (SSCC-18)
@@ -829,7 +831,7 @@ Value
108 `BARCODE_HIBC_MICPDF` HIBC MicroPDF417
110 `BARCODE_HIBC_BLOCKF` HIBC Codablock-F
110 `BARCODE_HIBC_BLOCKF` HIBC Codablock F
112 `BARCODE_HIBC_AZTEC` HIBC Aztec Code
@@ -934,7 +936,7 @@ Warning 247: Height not compliant with standards
```
Another switch is `--heightperrow`, which can be useful for symbologies that
have a variable number of linear rows, namely Codablock-F, Code 16K, Code 49,
have a variable number of linear rows, namely Codablock F, Code 16K, Code 49,
GS1 DataBar Expanded Stacked, MicroPDF417 and PDF417, as it changes the
treatment of the height value from overall height to per-row height, allowing
you to specify a consistent height for each linear row without having to know
@@ -982,7 +984,7 @@ A `--quietzones` option is also available which adds quiet zones compliant with
the symbology's specification. This is in addition to any whitespace specified
with the `--whitesp` or `--vwhitesp` switches.
Note that Codablock-F, Code 16K, Code 49, ITF-14, EAN-13, EAN-8, EAN/UPC
Note that Codablock F, Code 16K, Code 49, ITF-14, EAN-13, EAN-8, EAN/UPC
add-ons, ISBN, UPC-A and UPC-E have compliant quiet zones added by default. This
can be disabled with the option `--noquietzones`.
@@ -1016,7 +1018,7 @@ whitespace.
![`zint -b QRCODE --border=1 --box -d "This Text"
--quietzones`](images/qrcode_box.svg){.i2d}
Codablock-F, Code 16K and Code 49 always have boundary bars, and default to
Codablock F, Code 16K and Code 49 always have boundary bars, and default to
particular horizontal whitespace values. Special considerations apply to ITF-14
and DPD - see [6.1.2.6 ITF-14] and [6.1.10.7 DPD Code] for those symbologies.
@@ -1258,7 +1260,7 @@ Latin-2 (ISO/IEC 8859-2 plus ASCII).
Symbology Default character sets Alternate if input not Latin-1
------------- ------------------------ ------------------------------
Aztec Code Latin-1 None
Codablock-F Latin-1 None
Codablock F Latin-1 None
Code 128 Latin-1 None
Code 16K Latin-1 None
Code One Latin-1 None
@@ -1290,7 +1292,7 @@ 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 be encoded in the symbologies Aztec
Code, Codablock-F, Code 128, Code 39, Data Matrix, MicroPDF417, PDF417 and QR
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
(HIBC LIC). For HIBC Provider Applications Standard (HIBC PAS), preface the data
@@ -1769,6 +1771,9 @@ values if asked to output to a text file (`"*.txt"`) or if given the option
`--filetype=txt` or the option `--dump`. This can be used for test and
diagnostic purposes.
Also there's the `--verbose` option which will output debug information to
`stdout`.
Additional options are available which are specific to certain symbologies.
These may, for example, control the amount of error correction data or the size
of the symbol. These options are discussed in section [6. Types of Symbology] of
@@ -2479,10 +2484,10 @@ Table: API `output_options` Values {#tbl:api_output_options}
[^15]: The `BARCODE_BIND_TOP` flag is set by default for DPD - see [6.1.10.7 DPD
Code].
[^16]: The `BARCODE_BIND` flag is always set for Codablock-F, Code 16K and Code
[^16]: The `BARCODE_BIND` flag is always set for Codablock F, Code 16K and Code
49. Special considerations apply to ITF-14 - see [6.1.2.6 ITF-14].
[^17]: Codablock-F, Code 16K, Code 49, EAN-13, EAN-8, EAN/UPC add-ons, ISBN,
[^17]: Codablock F, Code 16K, Code 49, EAN-13, EAN-8, EAN/UPC add-ons, ISBN,
ITF-14, UPC-A and UPC-E have compliant quiet zones added by default.
## 5.11 Setting the Input Mode
@@ -2719,7 +2724,7 @@ if (ZBarcode_BarcodeName(BARCODE_PDF417, name) == 0) {
}
```
will print `BARCODE_PDF417`.
will print "BARCODE_PDF417".
## 5.15 Checking Symbology Capabilities
@@ -2896,6 +2901,12 @@ int ZBarcode_Version(void);
The version parts are separated by hundreds. For instance, version `"2.9.1"` is
returned as `"20901"`.
## 5.19 Debug Info
Debugging information can be output to `stdout` by setting the `debug` member to
`ZINT_DEBUG_PRINT` (`1`). Other values are used internally by the test suite and
shouldn't be set.
# 6. Types of Symbology
@@ -3733,7 +3744,7 @@ A more sophisticated method is to use some type of line indexing which indicates
to the barcode reader which order the stacked symbols should be read in. This is
demonstrated by the symbologies below.
### 6.2.2 Codablock-F
### 6.2.2 Codablock F
This is a stacked symbology based on Code 128 which can encode Latin-1 data up
to a maximum length of 2726 symbol characters, meaning for instance up to 2726
@@ -3743,10 +3754,10 @@ all ASCII characters, or 5452 all numeric, or up to 1363 all extended ASCII
![`zint -b CODABLOCKF -d "CODABLOCK F Symbology"
--rows=3`](images/codablockf.svg){.lin}
The width of the Codablock-F symbol can be set using the `--cols` option (API
The width of the Codablock F symbol can be set using the `--cols` option (API
`option_2`), to a value between 9 and 67. The height (number of rows) can be set
using the `--rows` option (API `option_1`), with a maximum of 44. Zint does not
currently support encoding of GS1 data in Codablock-F symbols.
currently support encoding of GS1 data in Codablock F symbols.
A separate symbology ID (`BARCODE_HIBC_BLOCKF`) can be used to encode Health
Industry Barcode (HIBC) data which adds a leading `'+'` character and a
@@ -5200,7 +5211,7 @@ international standards:
(BC412) (1996)
- ANSI/AIM BC12-1998 - Uniform Symbology Specification Channel Code
- BS EN 798:1996 Bar coding - Symbology specifications - 'Codabar'
- AIM Europe ISS-X-24 - Uniform Symbology Specification Codablock-F (1995)
- AIM Europe ISS-X-24 - Uniform Symbology Specification Codablock F (1995)
- ISO/IEC 15417:2007 Information technology - Automatic identification and data
capture techniques - Code 128 bar code symbology specification
- BS EN 12323:2005 AIDC technologies - Symbology specifications - Code 16K
+33 -20
View File
@@ -78,6 +78,7 @@ March 2026
- 5.16 Feedback
- 5.17 UTF-8 to ECI convenience functions
- 5.18 Zint Version
- 5.19 Debug Info
- 6. Types of Symbology
- 6.1 One-Dimensional Symbols
- 6.1.1 Code 11
@@ -133,7 +134,7 @@ March 2026
- 6.1.14 BC412 (SEMI T1-95)
- 6.2 Stacked Symbologies
- 6.2.1 Basic Symbol Stacking
- 6.2.2 Codablock-F
- 6.2.2 Codablock F
- 6.2.3 Code 16K (EN 12323)
- 6.2.4 PDF417 (ISO 15438)
- 6.2.5 Compact PDF417 (ISO 15438)
@@ -922,7 +923,7 @@ underscores are optional.
73 BARCODE_VIN Vehicle Identification Number
74 BARCODE_CODABLOCKF Codablock-F
74 BARCODE_CODABLOCKF Codablock F
75 BARCODE_NVE18 NVE-18 (SSCC-18)
@@ -970,7 +971,7 @@ underscores are optional.
108 BARCODE_HIBC_MICPDF HIBC MicroPDF417
110 BARCODE_HIBC_BLOCKF HIBC Codablock-F
110 BARCODE_HIBC_BLOCKF HIBC Codablock F
112 BARCODE_HIBC_AZTEC HIBC Aztec Code
@@ -1063,7 +1064,7 @@ given:
Warning 247: Height not compliant with standards
Another switch is --heightperrow, which can be useful for symbologies that have
a variable number of linear rows, namely Codablock-F, Code 16K, Code 49, GS1
a variable number of linear rows, namely Codablock F, Code 16K, Code 49, GS1
DataBar Expanded Stacked, MicroPDF417 and PDF417, as it changes the treatment of
the height value from overall height to per-row height, allowing you to specify
a consistent height for each linear row without having to know how many there
@@ -1102,7 +1103,7 @@ A --quietzones option is also available which adds quiet zones compliant with
the symbologys specification. This is in addition to any whitespace specified
with the --whitesp or --vwhitesp switches.
Note that Codablock-F, Code 16K, Code 49, ITF-14, EAN-13, EAN-8, EAN/UPC
Note that Codablock F, Code 16K, Code 49, ITF-14, EAN-13, EAN-8, EAN/UPC
add-ons, ISBN, UPC-A and UPC-E have compliant quiet zones added by default. This
can be disabled with the option --noquietzones.
@@ -1133,7 +1134,7 @@ whitespace.
[zint -b QRCODE --border=1 --box -d "This Text" --quietzones]
Codablock-F, Code 16K and Code 49 always have boundary bars, and default to
Codablock F, Code 16K and Code 49 always have boundary bars, and default to
particular horizontal whitespace values. Special considerations apply to ITF-14
and DPD - see 6.1.2.6 ITF-14 and 6.1.10.7 DPD Code for those symbologies.
@@ -1342,7 +1343,7 @@ Latin-2 (ISO/IEC 8859-2 plus ASCII).
Symbology Default character sets Alternate if input not Latin-1
--------------- -------------------------- --------------------------------
Aztec Code Latin-1 None
Codablock-F Latin-1 None
Codablock F Latin-1 None
Code 128 Latin-1 None
Code 16K Latin-1 None
Code One Latin-1 None
@@ -1371,7 +1372,7 @@ 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 be encoded in the symbologies Aztec
Code, Codablock-F, Code 128, Code 39, Data Matrix, MicroPDF417, PDF417 and QR
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
(HIBC LIC). For HIBC Provider Applications Standard (HIBC PAS), preface the data
@@ -1791,6 +1792,8 @@ values if asked to output to a text file ("*.txt") or if given the option
--filetype=txt or the option --dump. This can be used for test and diagnostic
purposes.
Also theres the --verbose option which will output debug information to stdout.
Additional options are available which are specific to certain symbologies.
These may, for example, control the amount of error correction data or the size
of the symbol. These options are discussed in section 6. Types of Symbology of
@@ -2653,7 +2656,7 @@ success. For instance:
printf("%s\n", name);
}
will print BARCODE_PDF417.
will print BARCODE_PDF417.
5.15 Checking Symbology Capabilities
@@ -2802,6 +2805,12 @@ Lastly, the version of the Zint library linked to is returned by:
The version parts are separated by hundreds. For instance, version "2.9.1" is
returned as "20901".
5.19 Debug Info
Debugging information can be output to stdout by setting the debug member to
ZINT_DEBUG_PRINT (1). Other values are used internally by the test suite and
shouldnt be set.
6. Types of Symbology
6.1 One-Dimensional Symbols
@@ -3566,7 +3575,7 @@ A more sophisticated method is to use some type of line indexing which indicates
to the barcode reader which order the stacked symbols should be read in. This is
demonstrated by the symbologies below.
6.2.2 Codablock-F
6.2.2 Codablock F
This is a stacked symbology based on Code 128 which can encode Latin-1 data up
to a maximum length of 2726 symbol characters, meaning for instance up to 2726
@@ -3575,10 +3584,10 @@ all ASCII characters, or 5452 all numeric, or up to 1363 all extended ASCII
[zint -b CODABLOCKF -d "CODABLOCK F Symbology" --rows=3]
The width of the Codablock-F symbol can be set using the --cols option (API
The width of the Codablock F symbol can be set using the --cols option (API
option_2), to a value between 9 and 67. The height (number of rows) can be set
using the --rows option (API option_1), with a maximum of 44. Zint does not
currently support encoding of GS1 data in Codablock-F symbols.
currently support encoding of GS1 data in Codablock F symbols.
A separate symbology ID (BARCODE_HIBC_BLOCKF) can be used to encode Health
Industry Barcode (HIBC) data which adds a leading '+' character and a modulo-49
@@ -4976,7 +4985,7 @@ international standards:
(BC412) (1996)
- ANSI/AIM BC12-1998 - Uniform Symbology Specification Channel Code
- BS EN 798:1996 Bar coding - Symbology specifications - Codabar
- AIM Europe ISS-X-24 - Uniform Symbology Specification Codablock-F (1995)
- AIM Europe ISS-X-24 - Uniform Symbology Specification Codablock F (1995)
- ISO/IEC 15417:2007 Information technology - Automatic identification and data
capture techniques - Code 128 bar code symbology specification
- BS EN 12323:2005 AIDC technologies - Symbology specifications - Code 16K
@@ -5291,9 +5300,9 @@ OPTIONS
--cols=INTEGER
Set the number of data columns in the symbol to INTEGER. Affects
Codablock-F, DotCode, GS1 DataBar Expanded Stacked (DBAR_EXPSTK),
MicroPDF417 and PDF417 symbols.
Set the number of data columns in the symbol to INTEGER. Affects Codablock
F, DotCode, GS1 DataBar Expanded Stacked (DBAR_EXPSTK), MicroPDF417 and
PDF417 symbols.
--compliantheight
@@ -5466,7 +5475,7 @@ OPTIONS
--heightperrow
Treat height as per-row. Affects Codablock-F, Code 16K, Code 49, GS1 DataBar
Treat height as per-row. Affects Codablock F, Code 16K, Code 49, GS1 DataBar
Expanded Stacked (DBAR_EXPSTK), MicroPDF417 and PDF417.
-i, --input=FILE
@@ -5554,7 +5563,7 @@ OPTIONS
--rows=INTEGER
Set the number of rows for Codablock-F or PDF417 to INTEGER. It will also
Set the number of rows for Codablock F or PDF417 to INTEGER. It will also
set the minimum number of rows for Code 16K or Code 49, and the maximum
number of rows for GS1 DataBar Expanded Stacked (DBAR_EXPSTK).
@@ -5643,6 +5652,10 @@ OPTIONS
is in X-dimensions, and may be floating-point. Maximum is 10 and minimum is
-5. The default is 1.
--verbose
Output debug information to stdout.
--vers=INTEGER
Set the symbol version (size, check digits, other options) to INTEGER. The
@@ -5981,10 +5994,10 @@ height).
[15] The BARCODE_BIND_TOP flag is set by default for DPD - see 6.1.10.7 DPD
Code.
[16] The BARCODE_BIND flag is always set for Codablock-F, Code 16K and Code 49.
[16] The BARCODE_BIND flag is always set for Codablock F, Code 16K and Code 49.
Special considerations apply to ITF-14 - see 6.1.2.6 ITF-14.
[17] Codablock-F, Code 16K, Code 49, EAN-13, EAN-8, EAN/UPC add-ons, ISBN,
[17] Codablock F, Code 16K, Code 49, EAN-13, EAN-8, EAN/UPC add-ons, ISBN,
ITF-14, UPC-A and UPC-E have compliant quiet zones added by default.
[18] ZINT_CAP_EANUPC was previously named ZINT_CAP_EXTENDABLE, which is still
+50
View File
@@ -0,0 +1,50 @@
.\" Automatically generated by Pandoc 3.9
.\"
.TH "ZINT\-QT" "1" "March 2026" "Version 2.16.0.9"
.SH NAME
\f[CR]zint\-qt\f[R] \- Zint Barcode Studio, a Qt frontend to the Zint
Barcode Generator
.SH SYNOPSIS
.PP
\f[CR]zint\-qt\f[R] [\f[CR]\-\-verbose\f[R]]
.SH DESCRIPTION
zint\-qt encodes input data in a barcode which can then be saved to an
image file or to the clipboard.
.PP
Input data is UTF\-8, unless the \(lqBinary Mode\(rq checkbox is
checked.
.PP
Output may be in one of these formats: Windows Bitmap (\f[CR]BMP\f[R]),
Enhanced Metafile Format (\f[CR]EMF\f[R]), Encapsulated PostScript
(\f[CR]EPS\f[R]), Graphics Interchange Format (\f[CR]GIF\f[R]), ZSoft
Paintbrush (\f[CR]PCX\f[R]), Portable Network Format (\f[CR]PNG\f[R]),
Scalable Vector Graphic (\f[CR]SVG\f[R]), or Tagged Image File Format
(\f[CR]TIF\f[R]).
.SH OPTIONS
.TP
\f[CR]\-\-verbose\f[R]
Output debug information to stdout.
.SH EXIT STATUS
\f[CR]0\f[R]
.SH BUGS
Please send bug reports to https://sourceforge.net/p/zint/tickets/.
.SH SEE ALSO
Documentation for \f[CR]zint\-qt\f[R] (and the API \f[CR]libzint\f[R]
and the CLI \f[CR]zint\f[R]) is available from
.IP
.EX
https://zint.org.uk/manual/
.EE
.PP
and at
.IP
.EX
https://sourceforge.net/p/zint/docs/manual.txt
.EE
.SH COPYRIGHT
Copyright © 2026 Robin Stuart.
Released under GNU GPL 3.0 or later.
.SH AUTHOR
Robin Stuart \c
.MT robin@zint.org.uk
.ME \c
+55
View File
@@ -0,0 +1,55 @@
% ZINT-QT(1) Version 2.16.0.9
%
% March 2026
[//]: # ( vim: set ts=4 sw=4 et : )
# NAME
`zint-qt` - Zint Barcode Studio, a Qt frontend to the Zint Barcode Generator
# SYNOPSIS
| `zint-qt` [`--verbose`]
# DESCRIPTION
zint-qt encodes input data in a barcode which can then be saved to an image file or to the clipboard.
Input data is UTF-8, unless the "Binary Mode" checkbox is checked.
Output may be in one of these formats: Windows Bitmap (`BMP`), Enhanced Metafile Format (`EMF`), Encapsulated
PostScript (`EPS`), Graphics Interchange Format (`GIF`), ZSoft Paintbrush (`PCX`), Portable Network Format (`PNG`),
Scalable Vector Graphic (`SVG`), or Tagged Image File Format (`TIF`).
# OPTIONS
`--verbose`
: Output debug information to stdout.
# EXIT STATUS
`0`
# BUGS
Please send bug reports to https://sourceforge.net/p/zint/tickets/.
# SEE ALSO
Documentation for `zint-qt` (and the API `libzint` and the CLI `zint`) is available from
https://zint.org.uk/manual/
and at
https://sourceforge.net/p/zint/docs/manual.txt
# COPYRIGHT
Copyright © 2026 Robin Stuart. Released under GNU GPL 3.0 or later.
# AUTHOR
Robin Stuart <robin@zint.org.uk>
+6 -3
View File
@@ -103,7 +103,7 @@ Use the CMYK colour space when outputting to Encapsulated PostScript
.TP
\f[CR]\-\-cols=INTEGER\f[R]
Set the number of data columns in the symbol to \f[I]INTEGER\f[R].
Affects Codablock\-F, DotCode, GS1 DataBar Expanded Stacked
Affects Codablock F, DotCode, GS1 DataBar Expanded Stacked
(DBAR_EXPSTK), MicroPDF417 and PDF417 symbols.
.TP
\f[CR]\-\-compliantheight\f[R]
@@ -283,7 +283,7 @@ Set the height of the symbol in X\-dimensions.
.TP
\f[CR]\-\-heightperrow\f[R]
Treat height as per\-row.
Affects Codablock\-F, Code 16K, Code 49, GS1 DataBar Expanded Stacked
Affects Codablock F, Code 16K, Code 49, GS1 DataBar Expanded Stacked
(DBAR_EXPSTK), MicroPDF417 and PDF417.
.TP
\f[CR]\-i\f[R], \f[CR]\-\-input=FILE\f[R]
@@ -374,7 +374,7 @@ Rotate the symbol by \f[I]INTEGER\f[R] degrees, where \f[I]INTEGER\f[R]
can be 0, 90, 270 or 360.
.TP
\f[CR]\-\-rows=INTEGER\f[R]
Set the number of rows for Codablock\-F or PDF417 to \f[I]INTEGER\f[R].
Set the number of rows for Codablock F or PDF417 to \f[I]INTEGER\f[R].
It will also set the minimum number of rows for Code 16K or Code 49, and
the maximum number of rows for GS1 DataBar Expanded Stacked
(DBAR_EXPSTK).
@@ -477,6 +477,9 @@ Adjust the gap between the barcode and the Human Readable Text (HRT).
Maximum is 10 and minimum is \-5.
The default is 1.
.TP
\f[CR]\-\-verbose\f[R]
Output debug information to stdout.
.TP
\f[CR]\-\-vers=INTEGER\f[R]
Set the symbol version (size, check digits, other options) to
\f[I]INTEGER\f[R].
+9 -3
View File
@@ -2,6 +2,8 @@
%
% March 2026
[//]: # ( vim: set ts=4 sw=4 et : )
# NAME
`zint` - encode data as a barcode image
@@ -93,7 +95,7 @@ Paintbrush (`PCX`), Portable Network Format (`PNG`), Scalable Vector Graphic (`S
`--cols=INTEGER`
: Set the number of data columns in the symbol to *INTEGER*. Affects Codablock-F, DotCode, GS1 DataBar Expanded
: Set the number of data columns in the symbol to *INTEGER*. Affects Codablock F, DotCode, GS1 DataBar Expanded
Stacked (DBAR_EXPSTK), MicroPDF417 and PDF417 symbols.
`--compliantheight`
@@ -250,7 +252,7 @@ Paintbrush (`PCX`), Portable Network Format (`PNG`), Scalable Vector Graphic (`S
`--heightperrow`
: Treat height as per-row. Affects Codablock-F, Code 16K, Code 49, GS1 DataBar Expanded Stacked (DBAR_EXPSTK),
: Treat height as per-row. Affects Codablock F, Code 16K, Code 49, GS1 DataBar Expanded Stacked (DBAR_EXPSTK),
MicroPDF417 and PDF417.
`-i`, `--input=FILE`
@@ -332,7 +334,7 @@ Paintbrush (`PCX`), Portable Network Format (`PNG`), Scalable Vector Graphic (`S
`--rows=INTEGER`
: Set the number of rows for Codablock-F or PDF417 to *INTEGER*. It will also set the minimum number of rows for
: Set the number of rows for Codablock F or PDF417 to *INTEGER*. It will also set the minimum number of rows for
Code 16K or Code 49, and the maximum number of rows for GS1 DataBar Expanded Stacked (DBAR_EXPSTK).
`--scale=NUMBER`
@@ -409,6 +411,10 @@ Paintbrush (`PCX`), Portable Network Format (`PNG`), Scalable Vector Graphic (`S
: Adjust the gap between the barcode and the Human Readable Text (HRT). *NUMBER* is in X-dimensions, and may be
floating-point. Maximum is 10 and minimum is -5. The default is 1.
`--verbose`
: Output debug information to stdout.
`--vers=INTEGER`
: Set the symbol version (size, check digits, other options) to *INTEGER*. The meaning is symbol-specific.