CODE128: reduce extended latch cut-off from 5 to 4 for better

encodation in certain cases (and no pessimizations found so far),
  props lyngklip (BWIPP);
  fix extended char latching when exactly 3 extended chars at end;
  count code set C (not digits) in loop deciding when to
  shift/latch to extended for better estimate
AZTEC: return warning if ECC < 5% (due to bit-stuffing when version
  given); return error if > 22 layers (Zint 26) for Reader
  Initialisation symbol requested for better error message
AZTEC/HANXIN/QRCODE: consolidate different ECC data size tables
  into one indexed by ECC
DBAR_EXP: check for reduced length <= 77 up front for better error
  message
HANXIN: use `malloc()` rather than `z_alloca()` for large binary
  array
QRCODE: `ecc_level` now 0-based (not 1-based)
MICROQR: consolidate different version end routines into one
  `microqr_end()` and use new `microqr_data` table to simplify code
MICROPDF417: use table for max codewords per column
library: centralize all error messages using new `errtxt()`,
  `errtxtf()`, `errtxt_adj()` funcs that protect `symbol->errtxt`
  from overflow, & try to make error messages more consistent
  thru-out, adding more feedback info to many, & use positional
  args "%n$" in prep for l10n (maybe);
  `is_sane/is_sane_lookup()` -> `not_sane/not_sane_lookup()`,
  returning 1-based position (zero on failure) instead of bool;
  `long` ints -> plain `int` (except those dealing with `ftell()`,
  `fread()` etc) as depend on int being 32-bits already
GUI: in "grpDATF.ui" use "PlainText" rather than "RichText" for
  tracker ratio examples as height of text messing up sometimes
manual: clarify Codablock-F length maximum & add examples
docs: README: pandoc 3.5, Ubuntu 24.04
CMake: use "-Wpedantic" for Clang only as GNU complains about
  `errtxtf()` positional args "%n$"
This commit is contained in:
gitlost
2024-10-27 21:33:33 +00:00
parent 752c1fae5d
commit 5e2044ff2e
104 changed files with 8102 additions and 7755 deletions

View File

@ -1,13 +1,20 @@
% docs/README 2024-09-29
% docs/README 2024-10-27
For generation of "docs/manual.pdf" and "docs/manual.txt" from "manual.pmd" using a recent version of pandoc
On Ubuntu/Debian (tested on Ubuntu 22.04)
On Ubuntu/Debian (tested on Ubuntu 22.04 and Ubuntu 24.04)
wget https://github.com/jgm/pandoc/releases/download/3.4/pandoc-3.4-1-amd64.deb
sudo dpkg -i pandoc-3.4-1-amd64.deb
wget https://github.com/jgm/pandoc/releases/download/3.5/pandoc-3.5-1-amd64.deb
sudo dpkg -i pandoc-3.5-1-amd64.deb
For Ubuntu 22.04 (python < 3.12)
sudo apt install python3-pip
pip install pandoc-tablenos --user
Else for Ubuntu 24.04 (one way around "externally-managed-environment" error, PEP 668)
sudo apt install python3-full
python3 -m venv ~/py_envs
source ~/py_envs/bin/activate
pip install pandoc-tablenos
Then
export PATH=~/.local/bin:"$PATH"
# Temporary fix for version regex - see https://github.com/tomduck/pandoc-xnos/pull/29
python -m pip install --force-reinstall \
@ -18,11 +25,11 @@ On Ubuntu/Debian (tested on Ubuntu 22.04)
sudo apt install fonts-wqy-microhei
make
On Fedora (tested on Fedora Linux 38 (Workstation Edition))
On Fedora (tested on Fedora Linux 38 (Workstation Edition) and Fedora Linux 40 (Workstation Edition))
wget https://github.com/jgm/pandoc/releases/download/3.4/pandoc-3.4-linux-amd64.tar.gz
tar xf pandoc-3.4-linux-amd64.tar.gz
sudo mv -i pandoc-3.4/bin/pandoc /usr/local/bin
wget https://github.com/jgm/pandoc/releases/download/3.5/pandoc-3.5-linux-amd64.tar.gz
tar xf pandoc-3.5-linux-amd64.tar.gz
sudo mv -i pandoc-3.5/bin/pandoc /usr/local/bin
sudo dnf install python3-pip
pip install pandoc-tablenos --user
export PATH=~/.local/bin:"$PATH"

View File

@ -332,7 +332,7 @@
<h1 class="title">Zint Barcode Generator and Zint Barcode Studio User
Manual</h1>
<p class="author">Version 2.13.0.9</p>
<p class="date">September 2024</p>
<p class="date">October 2024</p>
</header>
<nav id="TOC" role="doc-toc">
<ul>
@ -5196,12 +5196,15 @@ alt="zint -b CODABLOCKF -d &quot;CODABLOCK F Symbology&quot; --rows=3" />
aria-hidden="true"><code>zint -b CODABLOCKF -d "CODABLOCK F Symbology" --rows=3</code></figcaption>
</figure>
<p>This is a stacked symbology based on Code 128 which can encode
Latin-1 data up to a maximum length of 2725 characters. 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>
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
to 1363 all extended ASCII (ISO/IEC 8859-1).</p>
<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>
<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

View File

@ -1,6 +1,6 @@
% Zint Barcode Generator and Zint Barcode Studio User Manual
% Version 2.13.0.9
% September 2024
% October 2024
# 1. Introduction
@ -3430,11 +3430,14 @@ demonstrated by the symbologies below.
--rows=3`](images/codablockf.svg){.lin}
This is a stacked symbology based on Code 128 which can encode Latin-1 data up
to a maximum length of 2725 characters. 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.
to a maximum length of 2726 symbol characters, meaning for instance up to 2726
all ASCII characters, or 5452 all numeric, or up to 1363 all extended ASCII
(ISO/IEC 8859-1).
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.
A separate symbology ID (`BARCODE_HIBC_BLOCKF`) can be used to encode Health
Industry Barcode (HIBC) data which adds a leading `'+'` character and a

View File

@ -1,6 +1,6 @@
Zint Barcode Generator and Zint Barcode Studio User Manual
Version 2.13.0.9
September 2024
October 2024
*******************************************************************************
* For reference the following is a text-only version of the Zint manual, *
@ -3298,11 +3298,14 @@ demonstrated by the symbologies below.
[zint -b CODABLOCKF -d "CODABLOCK F Symbology" --rows=3]
This is a stacked symbology based on Code 128 which can encode Latin-1 data up
to a maximum length of 2725 characters. 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.
to a maximum length of 2726 symbol characters, meaning for instance up to 2726
all ASCII characters, or 5452 all numeric, or up to 1363 all extended ASCII
(ISO/IEC 8859-1).
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.
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
@ -4823,7 +4826,7 @@ configured barcode is displayed once the "Generate" button is pressed.
Annex D. Man Page ZINT(1)
% ZINT(1) Version 2.13.0.9 % % September 2024
% ZINT(1) Version 2.13.0.9 % % October 2024
NAME

View File

@ -1,6 +1,6 @@
.\" Automatically generated by Pandoc 3.3
.\" Automatically generated by Pandoc 3.5
.\"
.TH "ZINT" "1" "September 2024" "Version 2.13.0.9"
.TH "ZINT" "1" "October 2024" "Version 2.13.0.9"
.SH NAME
\f[CR]zint\f[R] \- encode data as a barcode image
.SH SYNOPSIS

View File

@ -1,6 +1,6 @@
% ZINT(1) Version 2.13.0.9
%
% September 2024
% October 2024
# NAME