ZINT(1)
π zint(1) β the barcode girlie's field guide π
ok so this is the manual page for zint, from General Commands Manual β yes bestie, zint(1), the iconic one, we're doing this π
β¨ NAME β¨
zint β literally encodes your data as a barcode image. that's the whole job. she ate. π
πΈ SYNOPSIS πΈ
zint [-h | --help]
zint [options]
π¦ DESCRIPTION π¦
okay so zint takes input data β from the command line or from a file β encodes it into a barcode, and then outputs that barcode to an image file. main character energy tbh β¨
Input data is UTF-8, unless you hit it with --binary.
Human Readable Text (HRT) is shown by default for those barcodes that support HRT, unless --notext is specified. so like, the text under the bars? default on. π
The output image file (specified with -o | --output) can 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)
- Tagged Image File Format (TIF)
so many formats. she's versatile. π«Ά
π OPTIONS π
the options. there are so many options. i'm obsessed. lowkey overwhelming but we got this fr fr.
-h,--helpβ prints usage info that summarizes all the command line options. your little map when you're lost. πΊοΈ-b TYPE,--barcode=TYPEβ sets the barcode symbology that's gonna encode your data.TYPEis the number or the name of the symbology. if you don't say anything, it defaults to20(Code 128). to see what types exist, use the-t|--typesoption. type names are case-insensitive, and non-alphanumerics get ignored entirely (she doesn't care about your punctuation, respectfully). β¨--addongap=INTEGERβ for EAN/UPC symbologies, sets the gap between the main data and the add-on.INTEGERis in integral multiples of the X-dimension. the maximum gap you can set is12. the minimum is7β except for UPC-A, where the minimum is9. don't come at her with a 3, she will not accept it. π--batchβ treats each line of an input file (the one you gave with-i|--input) as its own separate data set, and produces a barcode image for every single one. images go out by default to numbered filenames starting with00001.png,00002.png, etc., and you can change that with the-o|--outputoption. barcode factory mode. π--bg=COLOURβ sets a background (paper) colour, whereCOLOURis in hexadecimalRRGGBBorRRGGBBAAformat, or in decimalC,M,Y,Kpercentages format. aesthetic choices matter bestie. π¨--binaryβ treats 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's character encoding happens at all. she is trusting you completely here, do not betray her. π--bindβ adds horizontal boundary bars (also known as bearer bars) to the symbol. the width of those boundary bars is specified by the--borderoption.--bindcan also be used to add row separator bars to symbols stacked with multiple-d|--datainputs β in that case the width of the separator bars is specified with the--separatoroption. versatile icon. π₯--bindtopβ adds a horizontal boundary bar to the top of the symbol. its width is specified by the--borderoption. just the top one. she's selective. π--boldβ uses a bold font for the Human Readable Text (HRT). make it pop. π--border=INTEGERβ sets the width of boundary bars (--bindor--bindtop) or box borders (--box), whereINTEGERis in integral multiples of the X-dimension. the default iszero. π--boxβ adds a box around the symbol. the width of the borders is specified by the--borderoption. cute little frame. πΌοΈ--cmykβ uses the CMYK colour space when outputting to Encapsulated PostScript (EPS) or TIF files. for the print girlies. π¨οΈ--cols=INTEGERβ sets the number of data columns in the symbol toINTEGER. affects Codablock-F, DotCode, GS1 DataBar Expanded Stacked (DBAR_EXPSTK), MicroPDF417 and PDF417 symbols. π--compliantheightβ warns you if the height specified by the--heightoption isn't compliant with the barcode's specification β or, if--heightisn't given at all, defaults to the height specified by the specification (if any). she's a rule follower and honestly? respect. β-d DATA,--data=DATAβ specifies the inputDATAto encode. the--escoption can be used to enter non-printing characters via escape sequences. theDATAshould be UTF-8, unless the--binaryoption is given, in which case it can be literally anything. π--directβ sends output to stdout, which in most cases you should re-direct to a pipe or a file. use--filetypeto specify the output format. no file, just vibes and a stream. π¦--dmiso144β for Data Matrix symbols, uses the standard ISO/IEC codeword placement for 144 x 144 (--vers=24) sized symbols, instead of the default "de facto" placement (which rotates the placement of ECC codewords). iykyk. π--dmreβ for Data Matrix symbols, allows Data Matrix Rectangular Extended (DMRE) sizes when considering automatic sizes. see also--square. π--dotsize=NUMBERβ sets the radius of the dots in dotty mode (--dotty).NUMBERis in X-dimensions and may be floating-point. the default is0.8. precision babe. β¨--dottyβ uses dots instead of squares for matrix symbols. DotCode is always in dotty mode, she doesn't get a choice. π--dumpβ dumps a hexadecimal representation of the symbol's encodation to stdout. the same representation can be outputted to a file by using a.txtextension with-o|--output, or by specifying--filetype=txt. nerd mode activated and i love it. π-e,--ecinosβ displays the table of ECIs (Extended Channel Interpretations). the cheat sheet. π--eci=INTEGERβ sets the ECI code for the input data toINTEGER. see-e|--ecinosfor 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. the whole squad supports it. π
note:--eciand-eare two different things β-e/--ecinosshows the table,--eci=INTEGERsets the code. don't mix them up bestie, i'm begging. π
--embedfontβ for vector output, embeds the font in the file for portability. currently only available for SVG output. keeping it self-contained. π--escβ processes escape characters in the input data. the escape sequences are:
\0 (0x00) NUL Null character
\E (0x04) EOT End of Transmission
\a (0x07) BEL Bell
\b (0x08) BS Backspace
\t (0x09) HT Horizontal Tab
\n (0x0A) LF Line Feed
\v (0x0B) VT Vertical Tab
\f (0x0C) FF Form Feed
\r (0x0D) CR Carriage Return
\e (0x1B) ESC Escape
\G (0x1D) GS Group Separator
\R (0x1E) RS Record Separator
\( (0x28) ( Opening parenthesis (only with
--gs1parens)
\) (0x29) ) Closing parenthesis (only with
--gs1parens)
\\ (0x5C) \ Backslash
\dNNN (NNN) Any 8-bit character where NNN is
decimal (000-255)
\oNNN (0oNNN) Any 8-bit character where NNN is
octal (000-377)
\xNN (0xNN) Any 8-bit character where NN is
hexadecimal (00-FF)
\uNNNN (U+NNNN) Any 16-bit Unicode BMP character
where NNNN is hexadecimal
\UNNNNNN (U+NNNNNN) Any 21-bit Unicode character
where NNNNNN is hexadecimal
--extraescβ for Code 128 only: as well as processing the normal escape sequences above, it processes the special escape sequences\^A,\^B,\^Cand\^@, which allow manual switching of Code Sets, plus the special escape sequence\^1which inserts an FNC1 character. the sequence\@turns manual switching off. and the sequence\^^can be used to encode data that contains special escape sequences. so meta. π€―--fastβ uses faster if less optimal encodation, or other shortcuts. affects Data Matrix, MicroPDF417, PDF417, QRCODE & UPNQR only. speed over perfection, sometimes that's the move. β‘--fg=COLOURβ specifies a foreground (ink) colour, whereCOLOURis in hexadecimalRRGGBBorRRGGBBAAformat, or in decimalC,M,Y,Kpercentages format. matches your--bg, obviously. π--filetype=TYPEβ sets the output file type toTYPE, which is one ofBMP,EMF,EPS,GIF,PCX,PNG,SVG,TIF,TXT. yes,TXTis in there, that's the--dumpsituation. π--fullmultibyteβ uses the multibyte modes of Grid Matrix, Han Xin and QR Code for non-ASCII data. for when your data is fancy. π--gs1β treats input as GS1 compatible data. Application Identifiers (AIs) should be placed in square brackets"[]"(but see--gs1parens). also accepts GS1 Digital Link URIs (unverified) for matrix symbologies. π--gs1nocheckβ treats input as GS1 compatible data (same as--gs1) but does not check the validity of the data. she's looking away. π--gs1parensβ treats input as GS1 compatible data (same as--gs1) but processes parentheses"()"as GS1 AI delimiters, rather than square brackets"[]". if the AI data contains opening parentheses, they must be backslashed ("\("). β οΈ--gs1strictβ treats input as GS1 compatible data (same as--gs1) and uses the GS1 Syntax Engine (if available) to strictly verify the GS1 data, including GS1 Digital Link URIs. ignored if--gs1nocheckis also given. strict queen. π--gssepβ for Data Matrix in GS1 mode, uses GS (0x1D) as the GS1 data separator instead of FNC1. π--guarddescent=NUMBERβ for EAN/UPC symbols, sets the height the guard bars descend below the main bars, whereNUMBERis in X-dimensions.NUMBERmay be floating-point. πͺ--guardwhitespaceβ for EAN/UPC symbols, adds quiet zone indicators"<"and/or">"to HRT where applicable. little arrows, adorable. β¬ οΈβ‘οΈ--height=NUMBERβ sets the height of the symbol in X-dimensions.NUMBERmay be floating-point. π--heightperrowβ treats height as per-row. affects Codablock-F, Code 16K, Code 49, GS1 DataBar Expanded Stacked (DBAR_EXPSTK), MicroPDF417 and PDF417. π-i FILE,--input=FILEβ reads the input data fromFILE. specify a single hyphen (-) forFILEto read from stdin. classic. π§--initβ creates a Reader Initialisation (Programming) symbol. π οΈ--mask=INTEGERβ sets the masking pattern to use for DotCode, Han Xin or QR Code toINTEGER, overriding the automatic selection. you're in charge now. π--mirrorβ uses the batch data to determine the filename in batch mode (--batch). the-o|--outputoption can be used to specify an output directory (any filename will be ignored). πͺ--mode=INTEGERβ for MaxiCode and GS1 Composite symbols, sets the encoding mode toINTEGER.
for MaxiCode (SCM is Structured Carrier Message, with 3 fields: postcode, 3-digit ISO 3166-1 country code, 3-digit service code):
β¦and the rest of that mode table keeps rolling, bestie:
2β SCM with 9-digit numeric postcode3β SCM with 6-character alphanumeric postcode4β Enhanced ECC for the primary part of the message5β Enhanced ECC for all of the message6β Reader Initialisation (Programming)
For GS1 Composite symbols (names end in _CC, i.e. EAN8_CC, EAN13_CC, GS1_128_CC, DBAR_OMN_CC etc.):
1β CC-A2β CC-B3β CC-C (GS1_128_CConly)
--nobackgroundβ Remove the background colour (EMF, EPS, GIF, PNG, SVG and TIF only).--noquietzonesβ Disable any quiet zones for symbols that define them by default.--notextβ Remove the Human Readable Text (HRT).-o,--output=FILEβ Send the output toFILE. When not in batch mode, the default is βout.pngβ (or βout.gifβ if zint built without PNG support). When in batch mode (--batch), special characters can be used to format the output filenames:~β Insert a number or0#β Insert a number or space@β Insert a number or*(+on Windows)- Any other β Insert literally
--primary=STRINGβ For MaxiCode, set the content of the primary message. For GS1 Composite symbols, set the content of the linear symbol.--quietzonesβ Add compliant quiet zones for symbols that specify them. This is in addition to any whitespace specified by-w|--whitespor--vwhitesp.-r,--reverseβ Reverse the foreground and background colours (white on black). Known as βreflectance reversalβ or βreversed reflectanceβ.--rotate=INTEGERβ Rotate the symbol byINTEGERdegrees, whereINTEGERcan be0,90,270or360.--rows=INTEGERβ Set the number of rows for Codablock-F or PDF417 toINTEGER. 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β Adjust the size of the X-dimension.NUMBERmay be floating-point, and is multiplied by2(except for MaxiCode) before being applied. The default scale is1.
For MaxiCode, the scale is multiplied by 10 for raster output, by 40 for EMF output, and by 2 otherwise.
Increments of 0.5 (half-integers) are recommended for non-MaxiCode raster output (BMP, GIF, PCX, PNG and TIF). Human Readable Text (HRT) for raster output will not be shown for scales less than 1.
See also --scalexdimdp below.
--scalexdimdp=X[,R]β Scale the image according to X-dimensionXand resolutionR, whereXis in mm andRis in dpmm (dots per mm).XandRmay be floating-point.Ris optional and defaults to12dpmm (approximately300dpi).Xmay be zero in which case a symbology-specific default is used.
The scaling takes into account the output filetype, and deals with all the details mentioned above. Units may be specified for X by appending βinβ (inch) or βmmβ, and for R by appending βdpiβ (dots per inch) or βdpmmβ - e.g. --scalexdimdp=0.013in,300dpi.
--scmvv=INTEGERβ For MaxiCode, prefix the Structured Carrier Message (SCM) with"[)>\R01\Gvv", wherevvis a 2-digitINTEGER.--secure=INTEGERβ Set the error correction level (ECC) toINTEGER. The meaning is specific to the following matrix symbols (all except PDF417 are approximate):
Aztec Code 1 to 4 (10%, 23%, 36%, 50%)
Grid Matrix 1 to 5 (10% to 50%)
Han Xin 1 to 4 (8%, 15%, 23%, 30%)
Micro QR 1 to 3 (7%, 15%, 25%) (L, M, Q)
PDF417 0 to 8 (2^(INTEGER + 1) codewords)
QR Code 1 to 4 (7%, 15%, 25%, 30%) (L, M, Q, H)
rMQR 2 or 4 (15% or 30%) (M or H)
Ultracode 1 to 6 (0%, 5%, 9%, 17%, 25%, 33%)
--segN=ECI,DATAβ Set the ECI & DATA content for segmentN, whereNis1to9.-d|--datamust still be given, and counts as segment0, its ECI given by--eci. Segments must be consecutive.--separator=INTEGERβ Set the height of row separator bars for stacked symbologies, whereINTEGERis in integral multiples of the X-dimension. The default is zero.--smallβ Use a smaller font for Human Readable Text (HRT).--squareβ For Data Matrix symbols, exclude rectangular sizes when considering automatic sizes. See also--dmre.--structapp=I,C[,ID]β Set Structured Append info, whereIis the 1-based index,Cis the total number of symbols in the sequence, andID, which is optional, is the identifier that all symbols in the sequence share. Structured Append is supported by Aztec Code, Code One, Data Matrix, DotCode, Grid Matrix, MaxiCode, MicroPDF417, PDF417, QR Code and Ultracode.-t,--typesβ Display the table of barcode types (symbologies). The numbers or names can be used with-b|--barcode.--textgap=NUMBERβ Adjust the gap between the barcode and the Human Readable Text (HRT).NUMBERis in X-dimensions, and may be floating-point. Maximum is10and minimum is-5. The default is1.--vers=INTEGERβ Set the symbol version (size, check digits, other options) toINTEGER. The meaning is symbol-specific.
For most matrix symbols, it specifies size:
Aztec Code β 1 to 36 (1 to 4 compact)
1 15x15 13 53x53 25 105x105
2 19x19 14 57x57 26 109x109
3 23x23 15 61x61 27 113x113
4 27x27 16 67x67 28 117x117
5 19x19 17 71x71 29 121x121
6 23x23 18 75x75 30 125x125
7 27x27 19 79x79 31 131x131
8 31x31 20 83x83 32 135x135
9 37x37 21 87x87 33 139x139
10 41x41 22 91x91 34 143x143
11 45x45 23 95x95 35 147x147
12 49x49 24 101x101 36 151x151
Code One β 1 to 10 (9 and 10 variable width) (HxW)
1 16x18 6 70x76
2 22x22 7 104x98
3 28x32 8 148x134
4 40x42 9 8xW
5 52x54 10 16xW
Data Matrix β 1 to 48 (31 to 48 DMRE) (HxW)
1 10x10 17 72x72 33 8x80
2 12x12 18 80x80 34 8x96
3 14x14 19 88x88 35 8x120
4 16x16 20 96x96 36 8x144
5 18x18 21 104x104 37 12x64
6 20x20 22 120x120 38 12x88
7 22x22 23 132x132 39 16x64
8 24x24 24 144x144 40 20x36
9 26x26 25 8x18 41 20x44
10 32x32 26 8x32 42 20x64
11 36x36 27 12x26 43 22x48
12 40x40 28 12x36 44 24x48
13 44x44 29 16x36 45 24x64
14 48x48 30 16x48 46 26x40
15 52x52 31 8x48 47 26x48
16 64x64 32 8x64 48 26x64
Grid Matrix β 1 to 13
1 18x18 6 78x78 11 138x138
2 30x30 7 90x90 12 150x150
3 42x42 8 102x102 13 162x162
4 54x54 9 114x114
5 66x66 10 126x126
Han Xin β 1 to 84
1 23x23 29 79x79 57 135x135
2 25x25 30 81x81 58 137x137
3 27x27 31 83x83 59 139x139
4 29x29 32 85x85 60 141x141
5 31x31 33 87x87 61 143x143
6 33x33 34 89x89 62 145x145
7 35x35 35 91x91 63 147x147
8 37x37 36 93x93 64 149x149
9 39x39 37 95x95 65 151x151
10 41x41 38 97x97 66 153x153
11 43x43 39 99x99 67 155x155
12 45x45 40 101x101 68 157x157
13 47x47 41 103x103 69 159x159
14 49x49 42 105x105 70 161x161
15 51x51 43 107x107 71 163x163
16 53x53 44 109x109 72 165x165
17 55x55 45 111x111 73 167x167
18 57x57 46 113x113 74 169x169
19 59x59 47 115x115 75 171x171
20 61x61 48 117x117 76 173x173
21 63x63 49 119x119 77 175x175
22 65x65 50 121x121 78 177x177
23 67x67 51 123x123 79 179x179
24 69x69 52 125x125 80 181x181
25 71x71 53 127x127 81 183x183
26 73x73 54 129x129 82 185x185
27 75x75 55 131x131 83 187x187
28 77x77 56 133x133 84 189x189
Micro QR β 1 to 4 (M1, M2, M3, M4)
1 11x11 3 15x15
2 13x13 4 17x17
β¦and yes, thereβs still more, bestie β keep going π
Okay bestie, next up is the QR Code size lore β¨ β here's the map, no cap:
QR Code 1 to 40
1 21x21 15 77x77 29 133x133
2 25x25 16 81x81 30 137x137
3 29x29 17 85x85 31 141x141
4 33x33 18 89x89 32 145x145
5 37x37 19 93x93 33 149x149
6 41x41 20 97x97 34 153x153
7 45x45 21 101x101 35 157x157
8 49x49 22 105x105 36 161x161
9 53x53 23 109x109 37 165x165
10 57x57 24 113x113 38 169x169
11 61x61 25 117x117 39 173x173
12 65x65 26 121x121 40 177x177
13 69x69 27 125x125
14 73x73 28 129x129
And for rMQR, the sizes are giving (HxW) energy π β levels 33 to 38 are doing automatic width:
rMQR 1 to 38 (33 to 38 automatic width) (HxW)
1 7x43 14 11x77 27 15x139
2 7x59 15 11x99 28 17x43
3 7x77 16 11x139 29 17x59
4 7x99 17 13x27 30 17x77
5 7x139 18 13x43 31 17x99
6 9x43 19 13x59 32 17x139
7 9x59 20 13x77 33 7xW
8 9x77 21 13x99 34 9xW
9 9x99 22 13x139 35 11xW
10 9x139 23 15x43 36 13xW
11 11x27 24 15x59 37 15xW
12 11x43 25 15x77 38 17xW
13 11x59 26 15x99
Now for the linear symbols, this option is all about check characters π β and real talk: βhideβ or βhiddenβ means donβt show in HRT, while βvisibleβ means do display in HRT. Here's the tea:
C25IATAβ1or2(add visible or hidden check digit)C25INDβ dittoC25INTERβ dittoC25LOGICβ dittoC25STANDARDβ dittoCodabarβ1or2(add hidden or visible check digit)Code 11β0to2(2 visible check digits to none)0β (default 2 visible check digits)1β (1 visible check digit)2β (no check digits)
Code 39β1or2(add visible or hidden check digit)Code 93β1(show the default check characters)EXCODE39β1or2(add visible or hidden check digit)LOGMARSβ1or2(add visible or hidden check digit)UK Plesseyβ1(show the default check characters)MSI Plesseyβ0to6(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)+10β (hide)
For a few other symbologies, it specifies other characteristics π¦:
Channel Codeβ3to8(no. of channels)DAFTβ50to900(permille tracker ratio)DPDβ1(relabel)PZNβ1(PZN7 instead of default PZN8)Ultracodeβ2(revision 2)VINβ1(add international prefix)-v,--versionβ Display zint version.--vwhitesp=INTEGERβ Set the height of vertical whitespace above and below the barcode, where INTEGER is in integral multiples of the X-dimension.-w,--whitesp=INTEGERβ Set the width of horizontal whitespace either side of the barcode, where INTEGER is in integral multiples of the X-dimension.--werrorβ Convert all warnings into errors.
π EXIT STATUS π
0β Success (including when given informational options-h|--help,-e|--ecinos,-t|--types,-v|--version).1β Human Readable Text was truncated (maximum 199 bytes) (ZINT_WARN_HRT_TRUNCATED)2β Invalid option given but overridden by Zint (ZINT_WARN_INVALID_OPTION)3β Automatic ECI inserted by Zint (ZINT_WARN_USES_ECI)4β Symbol created not compliant with standards (ZINT_WARN_NONCOMPLIANT)5β Input data wrong length (ZINT_ERROR_TOO_LONG)6β Input data incorrect (ZINT_ERROR_INVALID_DATA)7β Input check digit incorrect (ZINT_ERROR_INVALID_CHECK)8β Incorrect option given (ZINT_ERROR_INVALID_OPTION)9β Internal error (should not happen) (ZINT_ERROR_ENCODING_PROBLEM)10β Error opening output file (ZINT_ERROR_FILE_ACCESS)11β Memory allocation (malloc) failure (ZINT_ERROR_MEMORY)12β Error writing to output file (ZINT_ERROR_FILE_WRITE)13β Error counterpart of warning if--werrorgiven (ZINT_ERROR_USES_ECI)14β Error counterpart of warning if--werrorgiven (ZINT_ERROR_NONCOMPLIANT)15β Error counterpart of warning if--werrorgiven (ZINT_ERROR_HRT_TRUNCATED)
π EXAMPLES π
Create βout.pngβ (or βout.gifβ if zint built without PNG support) in the current directory, as a Code 128 symbol.
zint -d 'This Text'
Create βqr.svgβ in the current directory, as a QR Code symbol.
zint -b QRCode -d 'This Text' -o 'qr.svg'
Use batch mode to read from an input file βean13nos.txtβ containing a list of 13-digit GTINs, each on a separate line, to create a series of EAN-13 barcodes, formatting the output filenames to βean001.gifβ, βean002.gifβ etc. using the special character β~β.
zint -b EAN13 --batch -i 'ean13nos.txt' -o 'ean~~~.gif'
π BUGS π
Please send bug reports to https://sourceforge.net/p/zint/tickets/.
π SEE ALSO π
Full documentation for zint (and the API libzint and the GUI zint-qt) is available from
and at
https://sourceforge.net/p/zint/docs/manual.txt
π CONFORMING TO π
Zint is designed to be compliant with a number of international standards, including:
ISO/IEC 24778:2024ANSI/AIM BC12-1998EN 798:1996AIM ISS-X-24 (1995)ISO/IEC 15417:2007EN 12323:2005ISO/IEC 16388:2023ANSI/AIM BC6-2000ANSI/AIM BC5-1995AIM USS Code One (1994)ISO/IEC 16022:2024ISO/IEC 21471:2019ISO/IEC 15420:2009AIMD014 (v 1.63) (2008)ISO/IEC 24723:2010ISO/IEC 24724:2011ISO/IEC 20830:2021ISO/IEC 16390:2007ISO/IEC 16023:2000ISO/IEC 24728:2006ISO/IEC 15438:2015ISO/IEC 18004:2024ISO/IEC 23941:2022AIM ITS/04-023 (2022)
π COPYRIGHT π
Copyright Β© 2025 Robin Stuart. Released under GNU GPL 3.0 or later.
π«Ά AUTHOR π«Ά
Robin Stuart robin@zint.org.uk
This iconic page is from Version 2.16.0, dated December 2025, and itβs ZINT(1) β periodt π β¨
π¦ where this page comes from
- alpine 3.24: zint-doc 2.16.0-r0 Β· GPL-3.0-or-later
- arch rolling: zint 2.16.0-2 Β· GPL-3.0-or-later
- nixos 26.05: zint 2.16.0
- nixos 26.05: zint-qt 2.16.0
- nixpkgs unstable: zint 2.16.0
- nixpkgs unstable: zint-qt 2.16.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms