new routines `mirror_start()`, `mirror_outfile()` & limit
substitutions on Unix to backslash (Windows remains the same);
restrict "borderwidth", "textgap", "vwhitesp", "whitesp" < 100
CODEONE: fix `ceilf()` -> `C1_MULT_CEIL()` in FAST_MODE encodation
(improves/changes some encodation)
composite: preserve `gs1_verify()` warning using `warn_level` hack;
fix wrong name `zint_dbar_omnstk_set_height()` ->
`zint_dbar_stk_set_height()`;
use new `zint_micropdf_variant()` & `zint_micropdf_expand()`
routines (see below)
MICROPDF417: move variant determination into new shareable routine
`zint_micropdf_variant()` & expansion into `zint_micropdf_expand()`
qzint: add helper methods `setbordertypevalue()`,
`encodedinputmode()`, `encodedoutputoptions()`,
`ecivaluetoeciindex()` and `eciindextoecivalue()`
dbar: for performance pre-calculate `combins()` as array
coverage: add `malloc()`-type failure testing to AZTEC,
CONTENT_SEGS, MEMORY_FILE, raster, Reed-Solomon & vector;
numerous changes to remove unused code and test more branches
common: add `isxdigit()`
general: various code fiddlings
manual: add char names to sequence and batch format char tables;
mention long options can be shortened (& use "--compliantheight"
-> "--compliant");
expand mirror explanation & document substitutions in footnote;
workaround xecjk putting space after double quote when quoting
cjk chars & rejig input mode examples;
workaround html alignment bug in table gs1-enabled symbologies by
adding extra rh dashes to header cols;
add "figure nn: " to txt image tags via sed:
various other small fixes and rephrasings
use `tcolorbox` instead of `framed` for latex code blocks, works
much better, especially as now when using a background colour;
reduce gap after figures and force footnotes to bottom of page;
move most symbology figures to after some text to lessen chance
of subsection headers being orphaned on their own at end of page:
required a number of rewordings;
use named barcodes in example commands, rather than numbered;
fix "lua-crossrefs" filter to allow parentheses around
references;
various other fixes and rephrasings
some code fiddling on affected files
manual: use new lua filter "lua-crossrefs.lua" hacked from
https://github.com/rnwst/pandoc-lua-crossrefs as replacement for
tablenos which broke with pandoc 2.8.2 (get nicer output anyway);
fix "excode39.svg" data $ -> # to avoid shell processing;
document `ZBarcode_HaveGS1SyntaxEngine()`
(was only set on BMP output to length of BMP pixel array)
EXCODE39: change to display check digit in HRT by default
CODE39/EXCODE39/LOGMARS: new hidden check digit option
(`option_2 = 2`)
qr.c: suppress bogus gcc-13 warning (only appears on optimize)
GUI: move some symbology-specific options into Data Tab so
separate tab unnecessary (those with few options and no
Composite/ECI), namely: all C25XXX, CODE39/EXCODE39/LOGMARS,
MSI_PLESSEY, CODABAR, DAFT, DPD, MAILMARK_2D, ITF-14, PZN,
UPNQR, CHANNEL, CODE93 and VIN, adjusting grp uis.
change Data dialog button (ellipsis) QToolButton -> QPushButton
& vice versa zap/clear/eye/swap/scale buttons QPushButton ->
QToolButton for better mac compat (also makes sense);
remove some mac hacks that no longer seem necessary;
use folder icon for Export dialog directory button
manual: document new Symbology-specific groupbox & CODE39/etc
hidden check digit option; add annexes on Qt and Tcl backends;
narrow some tables for better txt output;
remove echoed image tags in txt (pandoc 3.1.5 regression?);
add one-page HTML output to Makefile; also tex output (debug);
add class attributes to images to aid HTML styling;
various other fiddlings
ZINT_WARN_INVALID_OPTION instead of 0 on ignored option;
more barcode synonyms
manual: append man page zint.1.pmd instead of CLI help;
various tweaks and fiddlings;
rMQR add ISO 23941 (released the other day but haven't got yet)
man page: expand and tweak
doc/Makefile: add HTML demo
HANXIN/QRCODE: use Hanzi/Kanji modes when compatible ECIs given
manual: one true source now manual.pmd from which manual.txt is generated
CLI: man page moved from frontend/zint.1.gz to docs/zint.1.gz, now
generated from docs/zint.1.pmd
add README.linux to root dir