backend_tcl: add "licence.txt"; add note to "readme.txt"

re LINK32 tcl/tk libs
update_version.php: add year replace for "licence.txt" above
This commit is contained in:
gitlost 2023-12-16 16:44:02 +00:00
parent 29a602c465
commit 27465451e2
9 changed files with 240 additions and 188 deletions

14
backend_tcl/licence.txt Normal file
View file

@ -0,0 +1,14 @@
Copyright (c) 2023 Robin Stuart
All rights reserved.
Redistribution and use in source and binary forms are permitted
provided that the above copyright notice and this paragraph are
duplicated in all such forms and that any documentation,
advertising materials, and other materials related to such
distribution and use acknowledge that the software was developed
by the <organization>. The name of the
<organization> may not be used to endorse or promote products derived
from this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

View file

@ -10,6 +10,8 @@ Build:
The header files of a TCL and Tk build are required for the build.
- MS-VC6 project file "zint_tcl.dsp" may be opened by the GUI.
(will need to add your version of tcl/tk libs to LINK32, e.g.
"tcl85.lib" and "tk85.lib")
- Linux/Unix build is provided by the configure script.
Thanks to Christian Werner for that.

View file

@ -1,11 +1,11 @@
.\" Automatically generated by Pandoc 3.1.9
.\" Automatically generated by Pandoc 3.1.10
.\"
.TH "ZINT" "1" "December 2023" "Version 2.12.0.9" ""
.SH NAME
\f[CR]zint\f[R] - encode data as a barcode image
\f[CR]zint\f[R] \- encode data as a barcode image
.SH SYNOPSIS
.PP
\f[CR]zint\f[R] [\f[CR]-h\f[R] | \f[CR]--help\f[R]]
\f[CR]zint\f[R] [\f[CR]\-h\f[R] | \f[CR]\-\-help\f[R]]
.PD 0
.P
.PD
@ -14,13 +14,13 @@
zint takes input data from the command line or a file to encode in a
barcode which is then output to an image file.
.PP
Input data is UTF-8, unless \f[CR]--binary\f[R] is specified.
Input data is UTF\-8, unless \f[CR]\-\-binary\f[R] is specified.
.PP
Human Readable Text (HRT) is displayed by default for those barcodes
that support HRT, unless \f[CR]--notext\f[R] is specified.
that support HRT, unless \f[CR]\-\-notext\f[R] is specified.
.PP
The output image file (specified with \f[CR]-o\f[R] |
\f[CR]--output\f[R]) may be in one of these formats: Windows Bitmap
The output image file (specified with \f[CR]\-o\f[R] |
\f[CR]\-\-output\f[R]) 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
@ -28,139 +28,141 @@ 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]-h\f[R], \f[CR]--help\f[R]
\f[CR]\-h\f[R], \f[CR]\-\-help\f[R]
Print usage information summarizing command line options.
.TP
\f[CR]-b TYPE\f[R], \f[CR]--barcode=TYPE\f[R]
\f[CR]\-b TYPE\f[R], \f[CR]\-\-barcode=TYPE\f[R]
Set the barcode symbology that will be used to encode the data.
\f[I]TYPE\f[R] is the number or name of the barcode symbology.
If not given, the symbology defaults to 20 (Code 128).
To see what types are available, use the \f[CR]-t\f[R] |
\f[CR]--types\f[R] option.
Type names are case-insensitive, and non-alphanumerics are ignored.
To see what types are available, use the \f[CR]\-t\f[R] |
\f[CR]\-\-types\f[R] option.
Type names are case\-insensitive, and non\-alphanumerics are ignored.
.TP
\f[CR]--addongap=INTEGER\f[R]
\f[CR]\-\-addongap=INTEGER\f[R]
For EAN/UPC symbologies, set the gap between the main data and the
add-on.
\f[I]INTEGER\f[R] is in integral multiples of the X-dimension.
add\-on.
\f[I]INTEGER\f[R] is in integral multiples of the X\-dimension.
The maximum gap that can be set is 12.
The minimum is 7, except for UPC-A, when the minimum is 9.
The minimum is 7, except for UPC\-A, when the minimum is 9.
.TP
\f[CR]--batch\f[R]
Treat each line of an input file specified with \f[CR]-i\f[R] |
\f[CR]--input\f[R] as a separate data set and produce a barcode image
\f[CR]\-\-batch\f[R]
Treat each line of an input file specified with \f[CR]\-i\f[R] |
\f[CR]\-\-input\f[R] as a separate data set and produce a barcode image
for each one.
The barcode images are outputted by default to numbered filenames
starting with \[lq]00001.png\[rq], \[lq]00002.png\[rq] etc., which can
be changed by using the \f[CR]-o\f[R] | \f[CR]--output\f[R] option.
be changed by using the \f[CR]\-o\f[R] | \f[CR]\-\-output\f[R] option.
.TP
\f[CR]--bg=COLOUR\f[R]
\f[CR]\-\-bg=COLOUR\f[R]
Specify a background (paper) colour where \f[I]COLOUR\f[R] is in
hexadecimal \f[CR]RRGGBB\f[R] or \f[CR]RRGGBBAA\f[R] format or in
decimal \f[CR]C,M,Y,K\f[R] percentages format.
.TP
\f[CR]--binary\f[R]
Treat input data as raw 8-bit binary data instead of the default UTF-8.
\f[CR]\-\-binary\f[R]
Treat input data as raw 8\-bit binary data instead of the default
UTF\-8.
Automatic code page translation to an ECI page is disabled, and no
validation of the data\[cq]s character encoding takes place.
.TP
\f[CR]--bind\f[R]
\f[CR]\-\-bind\f[R]
Add horizontal boundary bars (also known as bearer bars) to the symbol.
The width of the boundary bars is specified by the \f[CR]--border\f[R]
The width of the boundary bars is specified by the \f[CR]\-\-border\f[R]
option.
\f[CR]--bind\f[R] can also be used to add row separator bars to symbols
stacked with multiple \f[CR]-d\f[R] | \f[CR]--data\f[R] inputs, in which
case the width of the separator bars is specified with the
\f[CR]--separator\f[R] option.
\f[CR]\-\-bind\f[R] can also be used to add row separator bars to
symbols stacked with multiple \f[CR]\-d\f[R] | \f[CR]\-\-data\f[R]
inputs, in which case the width of the separator bars is specified with
the \f[CR]\-\-separator\f[R] option.
.TP
\f[CR]--bindtop\f[R]
\f[CR]\-\-bindtop\f[R]
Add a horizontal boundary bar to the top of the symbol.
The width of the boundary bar is specified by the \f[CR]--border\f[R]
The width of the boundary bar is specified by the \f[CR]\-\-border\f[R]
option.
.TP
\f[CR]--bold\f[R]
\f[CR]\-\-bold\f[R]
Use bold text for the Human Readable Text (HRT).
.TP
\f[CR]--border=INTEGER\f[R]
Set the width of boundary bars (\f[CR]--bind\f[R] or
\f[CR]--bindtop\f[R]) or box borders (\f[CR]--box\f[R]), where
\f[I]INTEGER\f[R] is in integral multiples of the X-dimension.
\f[CR]\-\-border=INTEGER\f[R]
Set the width of boundary bars (\f[CR]\-\-bind\f[R] or
\f[CR]\-\-bindtop\f[R]) or box borders (\f[CR]\-\-box\f[R]), where
\f[I]INTEGER\f[R] is in integral multiples of the X\-dimension.
The default is zero.
.TP
\f[CR]--box\f[R]
\f[CR]\-\-box\f[R]
Add a box around the symbol.
The width of the borders is specified by the \f[CR]--border\f[R] option.
The width of the borders is specified by the \f[CR]\-\-border\f[R]
option.
.TP
\f[CR]--cmyk\f[R]
\f[CR]\-\-cmyk\f[R]
Use the CMYK colour space when outputting to Encapsulated PostScript
(EPS) or TIF files.
.TP
\f[CR]--cols=INTEGER\f[R]
\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]
Warn if the height specified by the \f[CR]--height\f[R] option is not
\f[CR]\-\-compliantheight\f[R]
Warn if the height specified by the \f[CR]\-\-height\f[R] option is not
compliant with the barcode\[cq]s specification, or if
\f[CR]--height\f[R] is not given, default to the height specified by the
specification (if any).
\f[CR]\-\-height\f[R] is not given, default to the height specified by
the specification (if any).
.TP
\f[CR]-d\f[R], \f[CR]--data=DATA\f[R]
\f[CR]\-d\f[R], \f[CR]\-\-data=DATA\f[R]
Specify the input \f[I]DATA\f[R] to encode.
The \f[CR]--esc\f[R] option may be used to enter non-printing characters
using escape sequences.
The \f[I]DATA\f[R] should be UTF-8, unless the \f[CR]--binary\f[R]
The \f[CR]\-\-esc\f[R] option may be used to enter non\-printing
characters using escape sequences.
The \f[I]DATA\f[R] should be UTF\-8, unless the \f[CR]\-\-binary\f[R]
option is given, in which case it can be anything.
.TP
\f[CR]--direct\f[R]
Send output to stdout, which in most cases should be re-directed to a
\f[CR]\-\-direct\f[R]
Send output to stdout, which in most cases should be re\-directed to a
pipe or a file.
Use \f[CR]--filetype\f[R] to specify output format.
Use \f[CR]\-\-filetype\f[R] to specify output format.
.TP
\f[CR]--dmiso144\f[R]
\f[CR]\-\-dmiso144\f[R]
For Data Matrix symbols, use the standard ISO/IEC codeword placement for
144 x 144 (\f[CR]--vers=24\f[R]) sized symbols, instead of the default
144 x 144 (\f[CR]\-\-vers=24\f[R]) sized symbols, instead of the default
\[lq]de facto\[rq] placement (which rotates the placement of ECC
codewords).
.TP
\f[CR]--dmre\f[R]
\f[CR]\-\-dmre\f[R]
For Data Matrix symbols, allow Data Matrix Rectangular Extended (DMRE)
sizes when considering automatic sizes.
See also \f[CR]--square\f[R].
See also \f[CR]\-\-square\f[R].
.TP
\f[CR]--dotsize=NUMBER\f[R]
Set the radius of the dots in dotty mode (\f[CR]--dotty\f[R]).
\f[I]NUMBER\f[R] is in X-dimensions, and may be floating-point.
\f[CR]\-\-dotsize=NUMBER\f[R]
Set the radius of the dots in dotty mode (\f[CR]\-\-dotty\f[R]).
\f[I]NUMBER\f[R] is in X\-dimensions, and may be floating\-point.
The default is 0.8.
.TP
\f[CR]--dotty\f[R]
\f[CR]\-\-dotty\f[R]
Use dots instead of squares for matrix symbols.
DotCode is always in dotty mode.
.TP
\f[CR]--dump\f[R]
\f[CR]\-\-dump\f[R]
Dump a hexadecimal representation of the symbol\[cq]s encodation to
stdout.
The same representation may be outputted to a file by using a
\f[CR].txt\f[R] extension with \f[CR]-o\f[R] | \f[CR]--output\f[R] or by
specifying \f[CR]--filetype=txt\f[R].
\f[CR].txt\f[R] extension with \f[CR]\-o\f[R] | \f[CR]\-\-output\f[R] or
by specifying \f[CR]\-\-filetype=txt\f[R].
.TP
\f[CR]-e\f[R], \f[CR]--ecinos\f[R]
\f[CR]\-e\f[R], \f[CR]\-\-ecinos\f[R]
Display the table of ECIs (Extended Channel Interpretations).
.TP
\f[CR]--eci=INTEGER\f[R]
\f[CR]\-\-eci=INTEGER\f[R]
Set the ECI code for the input data to \f[I]INTEGER\f[R].
See \f[CR]-e\f[R] | \f[CR]--ecinos\f[R] for a list of the ECIs
See \f[CR]\-e\f[R] | \f[CR]\-\-ecinos\f[R] for a list of the ECIs
available.
ECIs are supported by Aztec Code, Code One, Data Matrix, DotCode, Grid
Matrix, Han Xin Code, MaxiCode, MicroPDF417, PDF417, QR Code, rMQR and
Ultracode.
.TP
\f[CR]--embedfont\f[R]
\f[CR]\-\-embedfont\f[R]
For vector output, embed the font in the file for portability.
Currently only available for SVG output.
.TP
\f[CR]--esc\f[R]
\f[CR]\-\-esc\f[R]
Process escape characters in the input data.
The escape sequences are:
.RS
@ -179,109 +181,109 @@ The escape sequences are:
\[rs]G (0x1D) GS Group Separator
\[rs]R (0x1E) RS Record Separator
\[rs]\[rs] (0x5C) \[rs] Backslash
\[rs]dNNN (NNN) Any 8-bit character where NNN is
decimal (000-255)
\[rs]oNNN (0oNNN) Any 8-bit character where NNN is
octal (000-377)
\[rs]xNN (0xNN) Any 8-bit character where NN is
hexadecimal (00-FF)
\[rs]uNNNN (U+NNNN) Any 16-bit Unicode BMP character
\[rs]dNNN (NNN) Any 8\-bit character where NNN is
decimal (000\-255)
\[rs]oNNN (0oNNN) Any 8\-bit character where NNN is
octal (000\-377)
\[rs]xNN (0xNN) Any 8\-bit character where NN is
hexadecimal (00\-FF)
\[rs]uNNNN (U+NNNN) Any 16\-bit Unicode BMP character
where NNNN is hexadecimal
\[rs]UNNNNNN (U+NNNNNN) Any 21-bit Unicode character
\[rs]UNNNNNN (U+NNNNNN) Any 21\-bit Unicode character
where NNNNNN is hexadecimal
.EE
.RE
.TP
\f[CR]--extraesc\f[R]
\f[CR]\-\-extraesc\f[R]
Process the special escape sequences \f[CR]\[rs]\[ha]A\f[R],
\f[CR]\[rs]\[ha]B\f[R] and \f[CR]\[rs]\[ha]C\f[R] that allow manual
switching of Code Sets (Code 128 only).
The sequence \f[CR]\[rs]\[ha]\[ha]\f[R] can be used to encode data that
contains special escape sequences.
.TP
\f[CR]--fast\f[R]
\f[CR]\-\-fast\f[R]
Use faster if less optimal encodation or other shortcuts (affects Data
Matrix, MicroPDF417, PDF417, QRCODE & UPNQR only).
.TP
\f[CR]--fg=COLOUR\f[R]
\f[CR]\-\-fg=COLOUR\f[R]
Specify a foreground (ink) colour where \f[I]COLOUR\f[R] is in
hexadecimal \f[CR]RRGGBB\f[R] or \f[CR]RRGGBBAA\f[R] format or in
decimal \f[CR]C,M,Y,K\f[R] percentages format.
.TP
\f[CR]--filetype=TYPE\f[R]
\f[CR]\-\-filetype=TYPE\f[R]
Set the output file type to \f[I]TYPE\f[R], which is one of
\f[CR]BMP\f[R], \f[CR]EMF\f[R], \f[CR]EPS\f[R], \f[CR]GIF\f[R],
\f[CR]PCX\f[R], \f[CR]PNG\f[R], \f[CR]SVG\f[R], \f[CR]TIF\f[R],
\f[CR]TXT\f[R].
.TP
\f[CR]--fullmultibyte\f[R]
\f[CR]\-\-fullmultibyte\f[R]
Use the multibyte modes of Grid Matrix, Han Xin and QR Code for
non-ASCII data.
non\-ASCII data.
.TP
\f[CR]--gs1\f[R]
\f[CR]\-\-gs1\f[R]
Treat input as GS1 compatible data.
Application Identifiers (AIs) should be placed in square brackets
\f[CR]\[dq][]\[dq]\f[R] (but see \f[CR]--gs1parens\f[R]).
\f[CR]\[dq][]\[dq]\f[R] (but see \f[CR]\-\-gs1parens\f[R]).
.TP
\f[CR]--gs1nocheck\f[R]
\f[CR]\-\-gs1nocheck\f[R]
Do not check the validity of GS1 data.
.TP
\f[CR]--gs1parens\f[R]
\f[CR]\-\-gs1parens\f[R]
Process parentheses \f[CR]\[dq]()\[dq]\f[R] as GS1 AI delimiters, rather
than square brackets \f[CR]\[dq][]\[dq]\f[R].
The input data must not otherwise contain parentheses.
.TP
\f[CR]--gssep\f[R]
\f[CR]\-\-gssep\f[R]
For Data Matrix in GS1 mode, use \f[CR]GS\f[R] (0x1D) as the GS1 data
separator instead of \f[CR]FNC1\f[R].
.TP
\f[CR]--guarddescent=NUMBER\f[R]
\f[CR]\-\-guarddescent=NUMBER\f[R]
For EAN/UPC symbols, set the height the guard bars descend below the
main bars, where \f[I]NUMBER\f[R] is in X-dimensions.
\f[I]NUMBER\f[R] may be floating-point.
main bars, where \f[I]NUMBER\f[R] is in X\-dimensions.
\f[I]NUMBER\f[R] may be floating\-point.
.TP
\f[CR]--guardwhitespace\f[R]
\f[CR]\-\-guardwhitespace\f[R]
For EAN/UPC symbols, add quiet zone indicators \f[CR]\[dq]<\[dq]\f[R]
and/or \f[CR]\[dq]>\[dq]\f[R] to HRT where applicable.
.TP
\f[CR]--height=NUMBER\f[R]
Set the height of the symbol in X-dimensions.
\f[I]NUMBER\f[R] may be floating-point.
\f[CR]\-\-height=NUMBER\f[R]
Set the height of the symbol in X\-dimensions.
\f[I]NUMBER\f[R] may be floating\-point.
.TP
\f[CR]--heightperrow\f[R]
Treat height as per-row.
Affects Codablock-F, Code 16K, Code 49, GS1 DataBar Expanded Stacked
\f[CR]\-\-heightperrow\f[R]
Treat height as per\-row.
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]
\f[CR]\-i\f[R], \f[CR]\-\-input=FILE\f[R]
Read the input data from \f[I]FILE\f[R].
Specify a single hyphen (\f[CR]-\f[R]) for \f[I]FILE\f[R] to read from
Specify a single hyphen (\f[CR]\-\f[R]) for \f[I]FILE\f[R] to read from
stdin.
.TP
\f[CR]--init\f[R]
\f[CR]\-\-init\f[R]
Create a Reader Initialisation (Programming) symbol.
.TP
\f[CR]--mask=INTEGER\f[R]
\f[CR]\-\-mask=INTEGER\f[R]
Set the masking pattern to use for DotCode, Han Xin or QR Code to
\f[I]INTEGER\f[R], overriding the automatic selection.
.TP
\f[CR]--mirror\f[R]
\f[CR]\-\-mirror\f[R]
Use the batch data to determine the filename in batch mode
(\f[CR]--batch\f[R]).
The \f[CR]-o\f[R] | \f[CR]--output\f[R] option can be used to specify an
output directory (any filename will be ignored).
(\f[CR]\-\-batch\f[R]).
The \f[CR]\-o\f[R] | \f[CR]\-\-output\f[R] option can be used to specify
an output directory (any filename will be ignored).
.TP
\f[CR]--mode=INTEGER\f[R]
\f[CR]\-\-mode=INTEGER\f[R]
For MaxiCode and GS1 Composite symbols, set the encoding mode to
\f[I]INTEGER\f[R].
.RS
.PP
For MaxiCode (SCM is Structured Carrier Message, with 3 fields:
postcode, 3-digit ISO 3166-1 country code, 3-digit service code):
postcode, 3\-digit ISO 3166\-1 country code, 3\-digit service code):
.IP
.EX
2 SCM with 9-digit numeric postcode
3 SCM with 6-character alphanumeric postcode
2 SCM with 9\-digit numeric postcode
3 SCM with 6\-character alphanumeric postcode
4 Enhanced ECC for the primary part of the message
5 Enhanced ECC for all of the message
6 Reader Initialisation (Programming)
@ -291,27 +293,27 @@ For GS1 Composite symbols (names end in \f[CR]_CC\f[R], i.e.\ EANX_CC,
GS1_128_CC, DBAR_OMN_CC etc.):
.IP
.EX
1 CC-A
2 CC-B
3 CC-C (GS1_128_CC only)
1 CC\-A
2 CC\-B
3 CC\-C (GS1_128_CC only)
.EE
.RE
.TP
\f[CR]--nobackground\f[R]
\f[CR]\-\-nobackground\f[R]
Remove the background colour (EMF, EPS, GIF, PNG, SVG and TIF only).
.TP
\f[CR]--noquietzones\f[R]
\f[CR]\-\-noquietzones\f[R]
Disable any quiet zones for symbols that define them by default.
.TP
\f[CR]--notext\f[R]
\f[CR]\-\-notext\f[R]
Remove the Human Readable Text (HRT).
.TP
\f[CR]-o\f[R], \f[CR]--output=FILE\f[R]
\f[CR]\-o\f[R], \f[CR]\-\-output=FILE\f[R]
Send the output to \f[I]FILE\f[R].
When not in batch mode, the default is \[lq]out.png\[rq] (or
\[lq]out.gif\[rq] if zint built without PNG support).
When in batch mode (\f[CR]--batch\f[R]), special characters can be used
to format the output filenames:
When in batch mode (\f[CR]\-\-batch\f[R]), special characters can be
used to format the output filenames:
.RS
.IP
.EX
@ -322,33 +324,33 @@ Any other Insert literally
.EE
.RE
.TP
\f[CR]--primary=STRING\f[R]
\f[CR]\-\-primary=STRING\f[R]
For MaxiCode, set the content of the primary message.
For GS1 Composite symbols, set the content of the linear symbol.
.TP
\f[CR]--quietzones\f[R]
\f[CR]\-\-quietzones\f[R]
Add compliant quiet zones for symbols that specify them.
This is in addition to any whitespace specified by \f[CR]-w\f[R] |
\f[CR]--whitesp\f[R] or \f[CR]--vwhitesp\f[R].
This is in addition to any whitespace specified by \f[CR]\-w\f[R] |
\f[CR]\-\-whitesp\f[R] or \f[CR]\-\-vwhitesp\f[R].
.TP
\f[CR]-r\f[R], \f[CR]--reverse\f[R]
\f[CR]\-r\f[R], \f[CR]\-\-reverse\f[R]
Reverse the foreground and background colours (white on black).
Known as \[lq]reflectance reversal\[rq] or \[lq]reversed
reflectance\[rq].
.TP
\f[CR]--rotate=INTEGER\f[R]
\f[CR]\-\-rotate=INTEGER\f[R]
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].
\f[CR]\-\-rows=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).
.TP
\f[CR]--scale=NUMBER\f[R]
Adjust the size of the X-dimension.
\f[I]NUMBER\f[R] may be floating-point, and is multiplied by 2 (except
\f[CR]\-\-scale=NUMBER\f[R]
Adjust the size of the X\-dimension.
\f[I]NUMBER\f[R] may be floating\-point, and is multiplied by 2 (except
for MaxiCode) before being applied.
The default scale is 1.
.RS
@ -356,19 +358,19 @@ The default scale is 1.
For MaxiCode, the scale is multiplied by 10 for raster output, by 40 for
EMF output, and by 2 otherwise.
.PP
Increments of 0.5 (half-integers) are recommended for non-MaxiCode
Increments of 0.5 (half\-integers) are recommended for non\-MaxiCode
raster output (BMP, GIF, PCX, PNG and TIF).
.PP
See also \f[CR]--scalexdimdp\f[R] below.
See also \f[CR]\-\-scalexdimdp\f[R] below.
.RE
.TP
\f[CR]--scalexdimdp=X[,R]\f[R]
Scale the image according to X-dimension \f[I]X\f[R] and resolution
\f[CR]\-\-scalexdimdp=X[,R]\f[R]
Scale the image according to X\-dimension \f[I]X\f[R] and resolution
\f[I]R\f[R], where \f[I]X\f[R] is in mm and \f[I]R\f[R] is in dpmm (dots
per mm).
\f[I]X\f[R] and \f[I]R\f[R] may be floating-point.
\f[I]X\f[R] and \f[I]R\f[R] may be floating\-point.
\f[I]R\f[R] is optional and defaults to 12 dpmm (approximately 300 dpi).
\f[I]X\f[R] may be zero in which case a symbology-specific default is
\f[I]X\f[R] may be zero in which case a symbology\-specific default is
used.
.RS
.PP
@ -376,16 +378,16 @@ The scaling takes into account the output filetype, and deals with all
the details mentioned above.
Units may be specified for \f[I]X\f[R] by appending \[lq]in\[rq] (inch)
or \[lq]mm\[rq], and for \f[I]R\f[R] by appending \[lq]dpi\[rq] (dots
per inch) or \[lq]dpmm\[rq] -
e.g.\ \f[CR]--scalexdimdp=0.013in,300dpi\f[R].
per inch) or \[lq]dpmm\[rq] \-
e.g.\ \f[CR]\-\-scalexdimdp=0.013in,300dpi\f[R].
.RE
.TP
\f[CR]--scmvv=INTEGER\f[R]
\f[CR]\-\-scmvv=INTEGER\f[R]
For MaxiCode, prefix the Structured Carrier Message (SCM) with
\f[CR]\[dq][)>\[rs]R01\[rs]Gvv\[dq]\f[R], where \f[CR]vv\f[R] is a
2-digit \f[I]INTEGER\f[R].
2\-digit \f[I]INTEGER\f[R].
.TP
\f[CR]--secure=INTEGER\f[R]
\f[CR]\-\-secure=INTEGER\f[R]
Set the error correction level (ECC) to \f[I]INTEGER\f[R].
The meaning is specific to the following matrix symbols (all except
PDF417 are approximate):
@ -403,28 +405,28 @@ Ultracode 1 to 6 (0%, 5%, 9%, 17%, 25%, 33%)
.EE
.RE
.TP
\f[CR]--segN=ECI,DATA\f[R]
\f[CR]\-\-segN=ECI,DATA\f[R]
Set the \f[I]ECI\f[R] & \f[I]DATA\f[R] content for segment N, where N is
1 to 9.
\f[CR]-d\f[R] | \f[CR]--data\f[R] must still be given, and counts as
segment 0, its ECI given by \f[CR]--eci\f[R].
\f[CR]\-d\f[R] | \f[CR]\-\-data\f[R] must still be given, and counts as
segment 0, its ECI given by \f[CR]\-\-eci\f[R].
Segments must be consecutive.
.TP
\f[CR]--separator=INTEGER\f[R]
\f[CR]\-\-separator=INTEGER\f[R]
Set the height of row separator bars for stacked symbologies, where
\f[I]INTEGER\f[R] is in integral multiples of the X-dimension.
\f[I]INTEGER\f[R] is in integral multiples of the X\-dimension.
The default is zero.
.TP
\f[CR]--small\f[R]
\f[CR]\-\-small\f[R]
Use small text for Human Readable Text (HRT).
.TP
\f[CR]--square\f[R]
\f[CR]\-\-square\f[R]
For Data Matrix symbols, exclude rectangular sizes when considering
automatic sizes.
See also \f[CR]--dmre\f[R].
See also \f[CR]\-\-dmre\f[R].
.TP
\f[CR]--structapp=I,C[,ID]\f[R]
Set Structured Append info, where \f[I]I\f[R] is the 1-based index,
\f[CR]\-\-structapp=I,C[,ID]\f[R]
Set Structured Append info, where \f[I]I\f[R] is the 1\-based index,
\f[I]C\f[R] is the total number of symbols in the sequence, and
\f[I]ID\f[R], which is optional, is the identifier that all symbols in
the sequence share.
@ -432,21 +434,21 @@ Structured Append is supported by Aztec Code, Code One, Data Matrix,
DotCode, Grid Matrix, MaxiCode, MicroPDF417, PDF417, QR Code and
Ultracode.
.TP
\f[CR]-t\f[R], \f[CR]--types\f[R]
\f[CR]\-t\f[R], \f[CR]\-\-types\f[R]
Display the table of barcode types (symbologies).
The numbers or names can be used with \f[CR]-b\f[R] |
\f[CR]--barcode\f[R].
The numbers or names can be used with \f[CR]\-b\f[R] |
\f[CR]\-\-barcode\f[R].
.TP
\f[CR]--textgap=NUMBER\f[R]
\f[CR]\-\-textgap=NUMBER\f[R]
Adjust the gap between the barcode and the Human Readable Text (HRT).
\f[I]NUMBER\f[R] is in X-dimensions, and may be floating-point.
Maximum is 10 and minimum is -5.
\f[I]NUMBER\f[R] is in X\-dimensions, and may be floating\-point.
Maximum is 10 and minimum is \-5.
The default is 1.
.TP
\f[CR]--vers=INTEGER\f[R]
\f[CR]\-\-vers=INTEGER\f[R]
Set the symbol version (size, check digits, other options) to
\f[I]INTEGER\f[R].
The meaning is symbol-specific.
The meaning is symbol\-specific.
.RS
.PP
For most matrix symbols, it specifies size:
@ -584,9 +586,9 @@ Code 93 1 (hide the default check characters)
EXCODE39 1 or 2 (add visible or hidden check digit)
LOGMARS 1 or 2 (add visible or hidden check digit)
MSI Plessey 0 to 6 (none to various visible options)
1, 2 (mod-10, mod-10 + mod-10)
3, 4 (mod-11 IBM, mod-11 IBM + mod-10)
5, 6 (mod-11 NCR, mod-11 NCR + mod-10)
1, 2 (mod\-10, mod\-10 + mod\-10)
3, 4 (mod\-11 IBM, mod\-11 IBM + mod\-10)
5, 6 (mod\-11 NCR, mod\-11 NCR + mod\-10)
+10 (hide)
.EE
.PP
@ -602,25 +604,26 @@ VIN 1 (add international prefix)
.EE
.RE
.TP
\f[CR]-v\f[R], \f[CR]--version\f[R]
\f[CR]\-v\f[R], \f[CR]\-\-version\f[R]
Display zint version.
.TP
\f[CR]--vwhitesp=INTEGER\f[R]
\f[CR]\-\-vwhitesp=INTEGER\f[R]
Set the height of vertical whitespace above and below the barcode, where
\f[I]INTEGER\f[R] is in integral multiples of the X-dimension.
\f[I]INTEGER\f[R] is in integral multiples of the X\-dimension.
.TP
\f[CR]-w\f[R], \f[CR]--whitesp=INTEGER\f[R]
\f[CR]\-w\f[R], \f[CR]\-\-whitesp=INTEGER\f[R]
Set the width of horizontal whitespace either side of the barcode, where
\f[I]INTEGER\f[R] is in integral multiples of the X-dimension.
\f[I]INTEGER\f[R] is in integral multiples of the X\-dimension.
.TP
\f[CR]--werror\f[R]
\f[CR]\-\-werror\f[R]
Convert all warnings into errors.
.SH EXIT STATUS
.TP
\f[CR]0\f[R]
Success (including when given informational options \f[CR]-h\f[R] |
\f[CR]--help\f[R], \f[CR]-e\f[R] | \f[CR]--ecinos\f[R], \f[CR]-t\f[R] |
\f[CR]--types\f[R], \f[CR]-v\f[R] | \f[CR]--version\f[R]).
Success (including when given informational options \f[CR]\-h\f[R] |
\f[CR]\-\-help\f[R], \f[CR]\-e\f[R] | \f[CR]\-\-ecinos\f[R],
\f[CR]\-t\f[R] | \f[CR]\-\-types\f[R], \f[CR]\-v\f[R] |
\f[CR]\-\-version\f[R]).
.TP
\f[CR]1\f[R]
Human Readable Text was truncated (maximum 199 bytes)
@ -663,44 +666,44 @@ Memory allocation (malloc) failure (\f[CR]ZINT_ERROR_MEMORY\f[R])
Error writing to output file (\f[CR]ZINT_ERROR_FILE_WRITE\f[R])
.TP
\f[CR]13\f[R]
Error counterpart of warning if \f[CR]--werror\f[R] given
Error counterpart of warning if \f[CR]\-\-werror\f[R] given
(\f[CR]ZINT_ERROR_USES_ECI\f[R])
.TP
\f[CR]14\f[R]
Error counterpart of warning if \f[CR]--werror\f[R] given
Error counterpart of warning if \f[CR]\-\-werror\f[R] given
(\f[CR]ZINT_ERROR_NONCOMPLIANT\f[R])
.TP
\f[CR]15\f[R]
Error counterpart of warning if \f[CR]--werror\f[R] given
Error counterpart of warning if \f[CR]\-\-werror\f[R] given
(\f[CR]ZINT_ERROR_HRT_TRUNCATED\f[R])
.SH EXAMPLES
Create \[lq]out.png\[rq] (or \[lq]out.gif\[rq] if zint built without PNG
support) in the current directory, as a Code 128 symbol.
.IP
.EX
zint -d \[aq]This Text\[aq]
zint \-d \[aq]This Text\[aq]
.EE
.PP
Create \[lq]qr.svg\[rq] in the current directory, as a QR Code symbol.
.IP
.EX
zint -b QRCode -d \[aq]This Text\[aq] -o \[aq]qr.svg\[aq]
zint \-b QRCode \-d \[aq]This Text\[aq] \-o \[aq]qr.svg\[aq]
.EE
.PP
Use batch mode to read from an input file \[lq]ean13nos.txt\[rq]
containing 13-digit GTINs, to create a series of EAN-13 barcodes,
containing 13\-digit GTINs, to create a series of EAN\-13 barcodes,
formatting the output filenames to \[lq]ean001.gif\[rq],
\[lq]ean002.gif\[rq] etc.
using the special character \[lq]\[ti]\[rq].
.IP
.EX
zint -b EANX --batch -i \[aq]ean13nos.txt\[aq] -o \[aq]ean\[ti]\[ti]\[ti].gif\[aq]
zint \-b EANX \-\-batch \-i \[aq]ean13nos.txt\[aq] \-o \[aq]ean\[ti]\[ti]\[ti].gif\[aq]
.EE
.SH BUGS
Please send bug reports to https://sourceforge.net/p/zint/tickets/.
.SH SEE ALSO
Full documention for \f[CR]zint\f[R] (and the API \f[CR]libzint\f[R] and
the GUI \f[CR]zint-qt\f[R]) is available from
the GUI \f[CR]zint\-qt\f[R]) is available from
.IP
.EX
https://zint.org.uk/manual/
@ -715,13 +718,13 @@ and at
Zint is designed to be compliant with a number of international
standards, including:
.PP
ISO/IEC 24778:2008, ANSI/AIM BC12-1998, EN 798:1996, AIM ISS-X-24
ISO/IEC 24778:2008, ANSI/AIM BC12\-1998, EN 798:1996, AIM ISS\-X\-24
(1995), ISO/IEC 15417:2007, EN 12323:2005, ISO/IEC 16388:2007, ANSI/AIM
BC6-2000, ANSI/AIM BC5-1995, AIM USS Code One (1994), ISO/IEC
BC6\-2000, ANSI/AIM BC5\-1995, AIM USS Code One (1994), ISO/IEC
16022:2006, ISO/IEC 21471:2019, ISO/IEC 15420:2009, AIMD014 (v 1.63)
(2008), ISO/IEC 24723:2010, ISO/IEC 24724:2011, ISO/IEC 20830:2021,
ISO/IEC 16390:2007, ISO/IEC 16023:2000, ISO/IEC 24728:2006, ISO/IEC
15438:2015, ISO/IEC 18004:2015, ISO/IEC 23941:2022, AIM ITS/04-023
15438:2015, ISO/IEC 18004:2015, ISO/IEC 23941:2022, AIM ITS/04\-023
(2022)
.SH COPYRIGHT
Copyright © 2023 Robin Stuart.

View file

@ -30,7 +30,7 @@ BEGIN
VALUE "FileDescription", "zint barcode generator\0"
VALUE "FileVersion", VER_FILEVERSION_STR
VALUE "InternalName", "zint.exe\0"
VALUE "LegalCopyright", "Copyright © 2022 Robin Stuart & BogDan Vatra\0"
VALUE "LegalCopyright", "Copyright © 2023 Robin Stuart & BogDan Vatra\0"
VALUE "OriginalFilename", "zint.exe\0"
VALUE "ProductName", "zint\0"
VALUE "ProductVersion", VER_FILEVERSION_STR

View file

@ -58,7 +58,7 @@ BEGIN
VALUE "InternalName", "qtZint"
VALUE "LegalCopyright", "Copyright © 2022 Robin Stuart & BogDan Vatra"
VALUE "LegalCopyright", "Copyright © 2023 Robin Stuart & BogDan Vatra"
VALUE "License", "GNU General Public License version 3"

View file

@ -142,6 +142,35 @@ function rc_replace($file, $rc_str1, $rc_str2, $year = '') {
}
}
function year_replace($file, $year) {
global $basename;
if (($get = file_get_contents($file)) === false) {
exit("$basename: ERROR: Could not read file \"$file\"" . PHP_EOL);
}
$match_pattern = '/Copyright /';
$lines = explode("\n", $get);
$done = 0;
foreach ($lines as $li => $line) {
if (preg_match($match_pattern, $line)) {
$cnt = 0;
$lines[$li] = preg_replace('/[0-9]+/', $year, $line, 1, $cnt);
if ($cnt === 0 || $lines[$li] === NULL) {
exit("$basename: ERROR: Could not replace \"$match_pattern\" in file \"$file\"" . PHP_EOL);
}
$done++;
break;
}
}
if ($done !== 1) {
exit("$basename: ERROR: Failed to replace Copyright year in file \"$file\"" . PHP_EOL);
}
if (!file_put_contents($file, implode("\n", $lines))) {
exit("$basename: ERROR: Could not write file \"$file\"" . PHP_EOL);
}
}
// CMakeLists.txt
$file = $data_dirname . 'CMakeLists.txt';
@ -243,6 +272,10 @@ version_replace(2, $data_dirname . 'backend_tcl/zint_tcl.dsp', '/ZINT_VERSION="\
version_replace(1, $data_dirname . 'backend_tcl/lib/zint/pkgIndex.tcl', '/zint /', '/zint [0-9.]+/', 'zint ' . $v_base_str . '');
// backend_tcl/licence.txt
year_replace($data_dirname . 'backend_tcl/licence.txt', $year);
// frontend/zint.rc
rc_replace($data_dirname . 'frontend/zint.rc', $rc_str1, $rc_str2, $year);

View file

@ -57,7 +57,7 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\zlib;..\..\lpng;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;ZINT_VERSION="2.13.0";BUILD_ZINT_DLL;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_DEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;ZINT_VERSION="2.12.0.9";BUILD_ZINT_DLL;DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<ExceptionHandling />
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
@ -91,7 +91,7 @@
<Optimization>MaxSpeed</Optimization>
<IntrinsicFunctions>false</IntrinsicFunctions>
<AdditionalIncludeDirectories>..\..\zlib;..\..\lpng;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;ZINT_VERSION="2.13.0";BUILD_ZINT_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;ZINT_VERSION="2.12.0.9";BUILD_ZINT_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<ExceptionHandling />
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>

View file

@ -53,7 +53,7 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\backend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_WIN32;_DEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;ZINT_VERSION="2.13.0";ZINT_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_WIN32;_DEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;ZINT_VERSION="2.12.0.9";ZINT_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<ExceptionHandling />
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
@ -72,7 +72,7 @@
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<AdditionalIncludeDirectories>..\backend;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_WIN32;NDEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;ZINT_VERSION="2.13.0";ZINT_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<PreprocessorDefinitions>WIN32;_WIN32;NDEBUG;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;ZINT_VERSION="2.12.0.9";ZINT_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<ExceptionHandling />
<RuntimeLibrary>MultiThreaded</RuntimeLibrary>

View file

@ -55,7 +55,7 @@ BEGIN
VALUE "FileDescription", "zint barcode generator\0"
VALUE "FileVersion", VER_FILEVERSION_STR
VALUE "InternalName", "zint.exe\0"
VALUE "LegalCopyright", "Copyright © 2022 Robin Stuart\0"
VALUE "LegalCopyright", "Copyright © 2023 Robin Stuart\0"
VALUE "LegalTrademarks", "\0"
VALUE "License", "GNU General Public License version 3\0"
VALUE "OriginalFilename", "zint.exe\0"