mirror of
https://github.com/zint/zint
synced 2024-11-16 20:57:25 +13:00
Move project history/version from manual.txt, backend/README into new ChangeLog
This commit is contained in:
parent
3c1869b032
commit
37cb277397
658
ChangeLog
Normal file
658
ChangeLog
Normal file
@ -0,0 +1,658 @@
|
||||
Version 2.9.1.9 (dev) (not released yet)
|
||||
========================================
|
||||
|
||||
**Incompatible changes**
|
||||
------------------------
|
||||
- Add halign (horizontal align) to struct zint_vector_string
|
||||
NOTE: backward incompatible text drawing for UPC/EAN
|
||||
- Change height and row_height array to floats
|
||||
NOTE: may cause changes in heights
|
||||
|
||||
Changes
|
||||
-------
|
||||
- Move project history/version from manual.txt and backend/README into this file
|
||||
- Command line switches -d or -i for code data may now be at any position.
|
||||
- Add rotation for vector formats
|
||||
- Change double to float for performance in many internal places
|
||||
- Ticket 197: Allow scaling in substeps. Warn if scaling < 0.5 as pixels lost.
|
||||
- Ticket 197: add output option to bypass time-intensive buffer_plot()
|
||||
(OUT_BUFFER_INTERMEDIATE)
|
||||
- Reduce BMP size by using 1 bit per pixel (except Ultracode)
|
||||
- New warn_level field, WARN_FAIL_ALL
|
||||
- Add ZPL compatibility mode (preliminary)
|
||||
- Remove version info from zint.h and put in zintconfig.h via zintconfig.h.in
|
||||
- Add ZBarcode_Cap()
|
||||
- Add GUI symbology filter, separate settings for each symbology
|
||||
- Require cmake 3.5, use PNG::PNG and add Qt6 build option
|
||||
- Make library fully stack-based so reentrant apart from file operations
|
||||
- Performance improvements (large data) for AZTEC/HANXIN/GRIDMATRIX/PDF417/QR
|
||||
- Option scmvv for MaxiCode #212; postcode needn't be space-filled
|
||||
- eci: Add support for all ECIs (Big5, Korean, UCS-2BE)
|
||||
- CLI: Handle UTF-8 args on Windows; -b <barcode name>
|
||||
- DATAMATRIX: make EOD encodation strictly ISO 16022 compliant
|
||||
- png.c: Use palette for file size savings
|
||||
- tif.c: Use palette/bilevel/LZW to reduce file size, alpha/CMYK support
|
||||
- Option gs1parens (GS1PARENS_MODE)
|
||||
- MAXICODE: Rejig raster output to more closely match ISO 16023:2000
|
||||
- C25STANDARD/C25INTER/C25IATA/C25LOGIC/C25IND: add check digit option (#216)
|
||||
- Use zint-64.svg for smoother icons, props frhun
|
||||
- Add whitespace_height to zint_symbol (vertical whitespace)
|
||||
- AZTEC: optimize populate_map (good for small data)
|
||||
- CMake: Windows compatible, backend/tests & frontend/tests now subprojects
|
||||
using new zint_add_test.cmake file, static build, new ZINT_USE_PNG and
|
||||
ZINT_USE_QT options, getopt moved to subproject and getopt detection,
|
||||
sanitizer flag detection, and many other improvements, props Alonso Schaich
|
||||
- PLESSEY: add options NCR weighted mod-10, hide check digit(s) in HRT
|
||||
- Fuller error messages; more comments zint.h
|
||||
|
||||
Bugs
|
||||
----
|
||||
- Code16k selects GS1 mode by default in GUI
|
||||
- Ultracode: use white pixels instead background for white modules.
|
||||
- EMF: fix Ultracode colours.
|
||||
- Ultracode: fix count of codewords when using reader init mode
|
||||
- Databar Limited: add 5 right guard spaces (ISO/IEC 24723:2010 6.2 (e))
|
||||
- Data Matrix: avoid unnecessary latch in X12 mode at end of data, #208
|
||||
- Data Matrix: fix eod shift -> 0 pad
|
||||
- POSTNET/PLANET: remove extra 1 module space
|
||||
- Aztec: fix bit-stuffing (again!) and Aztec Rune: fix for data >= 128
|
||||
- EAN composite: allow for check digit + buffer overflow for too long add-on
|
||||
- Han Xin fix 0xFFE terminator
|
||||
- GUI: Use UTF-8 for QSettings (non-ASCII was getting garbled on restore)
|
||||
- DOTCODE: Fix best_mask -> high_score prime test
|
||||
- CODEONE: various fixes, ECI support
|
||||
- #218 Prevent buffer overflow in ean_leading_zeroes by checking max lengths
|
||||
- MAXICODE: fix mask typos for ECI 3/4 bytes
|
||||
- Fix UPCEAN small font ignored/disabled (introduced [1adba1])
|
||||
- get_best_eci: check UTF-8 before returning 26
|
||||
- MAXICODE: fix shifting from sets C/D/E to A/B (only latch available)
|
||||
- EAN14, NVE18: fix checksum calc for zero-filled input
|
||||
- png: ULTRA: allow for fgcolour if bind/box (MR #111)
|
||||
- DOTCODE: allow for max 200 cols in CLI, GUI, Tcl
|
||||
- CODEONE/DATAMATRIX/MAILMARK/PLESSEY: fix some 32-bit/portability bugs
|
||||
- CODABAR: fix CALCIUM define address use, props Alonso Schaich
|
||||
- DATAMATRIX/CODEONE: Use LCM in look ahead tests to avoid floats (#228)
|
||||
- raster/output: use new isfintf() to test floats integral (CodeQL)
|
||||
- ZBarcode_Encode: don't reinit symbol->outfile, props Alonso Schaich
|
||||
- CODEONE: is_last_single_ascii() out-of-bounds, #232 CI-Fuzz, props Jan Schrewe
|
||||
- library: compat symbology 39 fix; ISBN: "X" check
|
||||
|
||||
|
||||
Version 2.9.1 2020-08-04
|
||||
========================
|
||||
|
||||
Changes
|
||||
-------
|
||||
- Ticket 122: Implement transparency support
|
||||
- Ticket 129: -nobackground option added
|
||||
- -fg and -bg may contain an alpha channel
|
||||
- structure zint_symbol may now contain an alpha channel as output
|
||||
- Added DPD Symbology
|
||||
- Add support for Unicode escape characters
|
||||
|
||||
Bugs
|
||||
----
|
||||
- EMF text colour does not change
|
||||
- Fix QPainterPath dependency for Visual Studio
|
||||
|
||||
|
||||
Version 2.9.0 2020-07-31
|
||||
========================
|
||||
|
||||
Changes
|
||||
-------
|
||||
- Dotcode: adapt to AIM DOC Revision 4
|
||||
- New option "-separator=" for zint to specify the separator height of stacked
|
||||
symbologies.
|
||||
- make internal routines invisible by a static function definition.
|
||||
- CODE11: make adding check digits an option, selectable to 2 (default as now),
|
||||
1 or none
|
||||
- LOGMARS restrict max length to 30 per MIL-STD-1189 Rev. B; make check digit
|
||||
optional
|
||||
- CODE39/EXCODE39: max length now 85
|
||||
- VIN code extended to international licence plates
|
||||
- CODABAR: 3 data characters minimum (plus start/stop), check digit option added
|
||||
- Channel Code: performance improvement
|
||||
- QT GUI:
|
||||
- GRIDMATRIX/HX/MQR/QRCODE/RMQR: allow separate selection of size/ECC
|
||||
- add DAFT and VIN Symbologies
|
||||
- Separarator option for DATAMATRIX
|
||||
- Ticket 162: parse escape sequences
|
||||
- gui element reassigments
|
||||
- UPC/EAN/ITF-14 Composite: Ticket 72: new option --addongap (default:9) to set
|
||||
the gap between code and composite.
|
||||
- TCL Backend: The following symbology names were renamed:
|
||||
- Matrix2of5 -> Standard2of5
|
||||
- PDF417Trunc -> PDF417Compact
|
||||
- RSS14Stacked -> GS1DataBarStacked
|
||||
- RSS14Stacked -> GS1DataBarStacked
|
||||
- RSS14StackedOmni -> GS1DataBarSstackedOmni
|
||||
- RSS14ExpandedStacked -> GS1DataBarExpandedStacked
|
||||
- OneCode -> USPSIntelligentMail
|
||||
- EAN128-CC -> GS1-128-CC
|
||||
- RSS14-CC -> GS1DataBarOmni-CC
|
||||
- RSSLimited-CC -> GS1DataBarLimited-CC
|
||||
- RSSExpandedStacked-CC -> GS1DataBarExpanded-CC
|
||||
- RSSEXPanded-CC -> GS1DataBarExpanded-CC
|
||||
- RSS14Stacked-CC -> GS1DataBarStacked-CC
|
||||
- RSS14Omni-CC -> GS1DataBarStackedOmni-CC
|
||||
- RSSExpandedStacked-CC -> GS1DataBarExpandedStacked-CC
|
||||
** Potential incompatibility **
|
||||
- API Symbol names changed but old names preserved in zint.h
|
||||
- BARCODE_C25MATRIX -> BARCODE_C25STANDARD
|
||||
- BARCODE_EAB128_CC -> BARCODE_GS1_128
|
||||
- BARCODE_RSS14 -> BARCODE_DBAR_OMN
|
||||
- BARCODE_RSS_LTD -> BARCODE_DBAR_LTD
|
||||
- BARCODE_RSS_EXP -> BARCODE_DBAR_EXP
|
||||
- BARCODE_PDF417TRUNC -> BARCODE_PDF417COMP
|
||||
- BARCODE_RSS14STACK -> BARCODE_DBAR_STK
|
||||
- BARCODE_RSS14STACK_OMNI -> BARCODE_DBAR_OMNSTK
|
||||
- BARCODE_RSS_EXPSTACK -> BARCODE_DBAR_EXPSTK
|
||||
- BARCODE_ONECODE -> BARCODE_USPS_IMAIL
|
||||
- BARCODE_EAN128_CC -> BARCODE_GS1_128_CC
|
||||
- BARCODE_RSS14_CC -> BARCODE_DBAR_OMN_CC
|
||||
- BARCODE_RSS_LTD_CC -> BARCODE_DBAR_LTD_CC
|
||||
- BARCODE_RSS_EXP_CC -> BARCODE_DBAR_EXP_CC
|
||||
- BARCODE_RSS14STACK_CC -> BARCODE_DBAR_STK_CC
|
||||
- BARCODE_RSS_EXPSTACK_CC -> BARCODE_DBAR_EXPSTK_CC
|
||||
|
||||
Bugs
|
||||
----
|
||||
- Ticket 185 EMF export corrections
|
||||
- fine scaling by the use of float arithmetic
|
||||
- full header (extension1&2) with correct size field
|
||||
- Ticket 190: Aztec buffer overrun fixed
|
||||
- Ticket 191 suppress clang-tidy warnings: raster.c, composite.c, qr.c
|
||||
- Ultracode internal encoding bugs, ECI 899
|
||||
- GS1 data: exclude DEL character
|
||||
- Ticket 192: missing malloc.h include for Windows compilers.
|
||||
- Correct GS1 AI 253 & 255 length from 14 to 13
|
||||
- Codablock F changes:
|
||||
- FNC4 may not be split over rows.
|
||||
- Use Code128 routine for one line Codablock FIM
|
||||
- Correct column range to 9 ... 62
|
||||
- allow new options: row count and column count, border_width and HIBC mode
|
||||
- pad correctly empty and last row
|
||||
- separator length correction
|
||||
- Code128 changes:
|
||||
- Correctly encode CodeA charset with control-character only data
|
||||
- Improve coding of Extended ASCII (FNC4)
|
||||
- Checksum calculation overflow protection
|
||||
- EAN128 may reduce length
|
||||
- Check for incomplete escape sequences on data specification: "\" without
|
||||
following character.
|
||||
- Code16K fixes: remove extended ASCII latch, pad character
|
||||
- Restructuring to have common code centralized:
|
||||
- Code128 routines for Codablock&Code16K
|
||||
- output.c has common routines from raster.c and symbologies.
|
||||
- HIBC_39: restrict max length to 68 otherwise to avoid overrun
|
||||
- Code One: protect agains overrun
|
||||
- Telepen: allow DEL
|
||||
- GS1 Databar/ GS1-128 Composite:
|
||||
- Separator bar corrections
|
||||
- Ticket 200: spurious additional row
|
||||
- Correct names in GUI
|
||||
- Compact PDF417:
|
||||
- Add missing stop pattern.
|
||||
- Rename in GUI: "PDF417 Truncated" to "Compact PDF417".
|
||||
- PDF417: Optimize text compaction mode switch.
|
||||
- Human readable representation: Code128, Code39, Code93 special characters
|
||||
are shown by a blank.
|
||||
- ITF14: Ticket 201: allow bind option
|
||||
|
||||
|
||||
Version 2.8.0 2020-04-10
|
||||
========================
|
||||
|
||||
Changes
|
||||
-------
|
||||
(New) Tests for auspost, codablock, composite, dotcode, general, telepen,
|
||||
upcean, all output formats
|
||||
- QR, Han Xin, Grid Matrix: the multi byte compaction schemes (ex: Kanji)
|
||||
are used by some decoders as codepage information (Ex: GB2312) and output
|
||||
may be translated to UTF-8. This may destroy the data in a not controlable
|
||||
manner.
|
||||
In consequence, multibyte compaction schemes are disabled by default.
|
||||
The new option --fullmultibyte (option_3 = ZINT_FULL_MULTIBYTE) enables this
|
||||
optimisation.
|
||||
- Add new symbology "Ultra Code" with the ability to output colour codes.
|
||||
|
||||
Bugs
|
||||
----
|
||||
- Ticket 181 penetration test found many bugs:
|
||||
- Auspost: null bytes in content caused segfault
|
||||
- Codablock: data 0x1a..0x1f caused segfault
|
||||
- Dotcode: overrun in binary mode, overrun in codeword_array buffer
|
||||
Correct encoding of HT/FS/GS/RS when shifting to code set B
|
||||
- empty or unreadable input file
|
||||
- telepen: buffer overflow
|
||||
- EANUCC: buffer overflow on multiple + (multiple extension bars)
|
||||
- Maxicode: index overrun on numeric compaction
|
||||
- CodeOne: Simple i indexing not sp + i in C1_ASCII numeric latch loop.
|
||||
- Aztec: free memory
|
||||
- Ticket 183: Databar stacked separator correction
|
||||
- Ticket 182: Output bitmap type was char, where some targets assigned 0
|
||||
if pixel colour >127 (e.g. negative). API change to use unsigned char.
|
||||
- HanXin: wrong codepage, gb2312 instead gb18030.
|
||||
- PDF417: corrected alloced sizes to max characters
|
||||
- Ticket 189: FNC1 encodation fixed (FLG(0) missing after FLG(n))
|
||||
- PCX format: added missing bytes_per_line if bitmap width is odd.
|
||||
|
||||
|
||||
Version 2.7.1 2020-02-01
|
||||
========================
|
||||
|
||||
Changes
|
||||
-------
|
||||
- QR encoding optimized to get smaller code matrix results
|
||||
- PDF417: remove obsolete codeword number option in qzint.
|
||||
Option removed in qtzint.
|
||||
- Removed annex B (3 digit country codes) and annex C (GS1 General
|
||||
Specification) from the manual. This material may be found elsewhere.
|
||||
- MAC homebrew remark added to the documentation
|
||||
- Correct cmake file to match BSD-3-clause licence
|
||||
|
||||
Bugs
|
||||
----
|
||||
- Correct uninitialized warning in gridmatrix.call
|
||||
- do not export internal functions
|
||||
- raster painting of UPC-A bound check
|
||||
- pdf417 documentation corrected: change flag -security to -secure
|
||||
- Dot Code encoding ECI number corrected
|
||||
- Corrected postscript plotting error
|
||||
- Datamatrix: corrected possible buffer overrun in 3 characters to 2 byte
|
||||
encodings.
|
||||
- In 2.7.0 removed interface "ZBarcode_Render" still declared
|
||||
- vc6 make was missing (trivial) resource.h
|
||||
|
||||
|
||||
Version 2.7.0 2019-12-05
|
||||
========================
|
||||
|
||||
Changes
|
||||
-------
|
||||
- Automatic height option added to qzint
|
||||
- DotCode in line with new specification
|
||||
- New GS1 AIs 7240, 235, 417, 7040, 8026, updated checks for 7007, 8008
|
||||
- New Symbology rMQR
|
||||
- QR and Qridmatrix optimisation for GB2312
|
||||
- removed depreciated interface for gLabels program. Please use current
|
||||
interface.
|
||||
|
||||
Fixed bugs
|
||||
----------
|
||||
- Many improvements in composite codes
|
||||
- SVG output corrected for messages containing "<" and "&".
|
||||
- GS1-128 and RSS may only be used with GS1 contents
|
||||
- Han Xin chinese character handling
|
||||
|
||||
|
||||
Version 2.6.7 2019-10-07
|
||||
========================
|
||||
|
||||
Changes
|
||||
-------
|
||||
Ticket 127: Allow to code ECI 3 if explicitly given for debug purposes.
|
||||
**Incompatible change**
|
||||
"--eci 3" now leads to included ECI information.
|
||||
"--eci 0" may now be used to not include any ECI information.
|
||||
The default of the parameter changed from 3 to 0.
|
||||
|
||||
Fixed bugs
|
||||
----------
|
||||
Ticket 146, 165: fix wrong encoding of RSS composite codes
|
||||
|
||||
|
||||
Version 2.6.6 2019-09-18
|
||||
========================
|
||||
|
||||
Fixed bugs
|
||||
----------
|
||||
Ticket 161: PDF row size may be set
|
||||
Ticket 155: PDF numeric compaction
|
||||
Ticket 164: crash due to call of svg_plot withnull vector
|
||||
Ticket 119: Crash on bullseye raster drawing
|
||||
qtzint: Micro-QR version option choice corrected (+1 missing).
|
||||
Datamatrix: code corruption when ECI was encoded and base256 encoding was
|
||||
automatically chosen.
|
||||
|
||||
|
||||
Version 2.6.5 2019-09-02
|
||||
========================
|
||||
|
||||
Fixed bugs
|
||||
----------
|
||||
backend/main.c was missing
|
||||
Maxicode bullseye rastering for scale = 0.5
|
||||
Crash in utf to eci.
|
||||
eci ISO 8859-16 table missing data line
|
||||
upce check for 7 digit input (causes crash) and BARCODE_UPCE_CHK -> BARCODE_UPCE
|
||||
mapping removed
|
||||
US imail check for invalid barcode identifier and allow 0/5/9/11 length zip
|
||||
maxicode code set correction
|
||||
cmake flags for debugging and sanitize options
|
||||
unit tests for the changes, with a simple test suite based on qrencode/tests
|
||||
|
||||
|
||||
Version 2.6.4 2019-08-30
|
||||
========================
|
||||
Fixed bugs: EMF output, maxicode plot/content
|
||||
Datamatrix DMRE updated to the ISO/IEC29158 version. This is incompatible in the
|
||||
way that the old -vers numbers for DMRE are re-assigned.
|
||||
The separator of GS1-datamatrix may be switched from FNC1 to GS.
|
||||
GS1 field length check AI 8009 and 7230 to 7239 currected.
|
||||
|
||||
|
||||
Version 2.6.3 2018-02-15
|
||||
========================
|
||||
New symbology Royal Mail 4-state Mailmark. Added North America VIN verification.
|
||||
Bugfixes for TIF and EMF output and escape character handling.
|
||||
|
||||
|
||||
Version 2.6.2 2017-10-22
|
||||
========================
|
||||
Further bugfixes in Aztec and DotCode. Expand escape sequence support
|
||||
to API and GUI. Handle UTF BOM. Bugfix raster images of Maxicode.
|
||||
|
||||
|
||||
Version 2.6.1 2017-08-27
|
||||
========================
|
||||
Library bugfixes: EDIFACT unlatch in Data Matrix, Add UPNQR, Improved Aztec
|
||||
data compression, Detect Code 128 data too long, Make error codes consistent.
|
||||
GUI improvements: Additional clipboard options, remove border width bug,
|
||||
remove changing background colour bug, remember more settings and make GUI
|
||||
more consistent with user expectations. All windows now resizable and more
|
||||
information given when batch processing.
|
||||
|
||||
|
||||
Version 2.6.0 2017-05-12
|
||||
========================
|
||||
Update front end to Qt5. Output to EMF and TIF. Copy to clipboard. Update
|
||||
to latest draft of DMRE. Usual bugfixes.
|
||||
|
||||
|
||||
Version 2.5.1 2017-04-03
|
||||
========================
|
||||
Numerous bugfixes, especially with Data Matrix thanks to extensive testing
|
||||
by brunt@SF
|
||||
|
||||
|
||||
Version 2.5 2016-11-13
|
||||
======================
|
||||
Support for DotCode and Han Xin code. ECI code processing. Output to BMP, GIF
|
||||
and PCX. Added bold and small text options. Reintroduction of Codablock-F.
|
||||
Many minor fixes and improvements.
|
||||
|
||||
|
||||
Version 2.4.3 2011-05-16
|
||||
========================
|
||||
Includes minor bugfixes
|
||||
|
||||
|
||||
Version 2.4.1 2011-04-19 & 2.4.2 2011-05-04
|
||||
===========================================
|
||||
A whole host of bugfixes including correction of ECC routines
|
||||
for Code-1 and addition of batch processing at the command line.
|
||||
|
||||
|
||||
Version 2.4 2010-09-13
|
||||
======================
|
||||
Built extensions to the API for integrating with glabels with thanks to
|
||||
Sam Lown and Jim Evins. Added code optimisation and input from stdin thanks to
|
||||
Ismael Luceno. Reinstated escape character input. Simplification of Barcode
|
||||
Studio.
|
||||
|
||||
|
||||
Version 2.3.2 2010-05-29
|
||||
========================
|
||||
Corrected many bugs in GS1 DataBar Extended thanks to the careful
|
||||
study of the code by Pablo Orduña at the PIRAmIDE project. Similarly corrected
|
||||
some bugs in Maxicode thanks to Monica Swanson at Source Technologies. Also
|
||||
minor bugfixes for ISBN and Aztec Code, and added some small features like a
|
||||
--square option in the CLI.
|
||||
|
||||
|
||||
Version 2.3.1 2010-04-07
|
||||
========================
|
||||
Removed Codablock-F. Redesigned scale function so that human readable
|
||||
text and Maxicode symbols can be scaled consistently. Corrected encoding bugs
|
||||
with Code 128/Code 16k and Data Matrix ECC200 ECC 050. Added --notext option to
|
||||
CLI.
|
||||
|
||||
|
||||
Version 2.3 2009-11-23
|
||||
======================
|
||||
Fixed problems with Micro QR Code and rebuilt QR Code support removing
|
||||
dependence on libqrencode. Improved Kanji character support for QR Code and
|
||||
Micro QR Code which now auto-detects and automatically converts to Shift-JIS.
|
||||
Added Grid Matrix symbology with Kanji character support and automatic
|
||||
conversion to GB 2312. Removed no_qr compile option. Advanced Barcode Studio
|
||||
version number to match library version number.
|
||||
|
||||
|
||||
Version 2.2.2 2009-09-29
|
||||
========================
|
||||
A beta release previewing the new API structure. Better NULL character
|
||||
support with "nullchar" value removed. Added loading from file and sequence
|
||||
dialogs in Barcode Studio.
|
||||
|
||||
|
||||
Version 2.2.1 2009-08-06
|
||||
========================
|
||||
Data encoding bugfixes for Aztec Code, Data Matrix ECC200, USPS One
|
||||
Code and PDF417. Symbol plotting bugfixes for MicroPDF417 and 2D components of
|
||||
composite symbols. Text formatting bugfix for Qt renderer and a couple of
|
||||
compiler fixes for MSVC PNG image output.
|
||||
|
||||
|
||||
Version 2.2 2009-07-18
|
||||
======================
|
||||
Added Code One and GS1 support in Code 49. Changed GUI binary name to
|
||||
zint-qt and brought GUI up to version 1.0. Made some minor bugfixes to Code 39,
|
||||
ITF-14, Aztec Code, Code 128 and Code 16K. Added 'rest' button to GUI. Included
|
||||
.spec file from Radist.
|
||||
|
||||
|
||||
Version 2.1.4 2009-06-19
|
||||
========================
|
||||
Many stability improvements including removal of buffer overruns in
|
||||
Code 39, LOGMARS, PZN, Aztec Code and Composite CC-A. Addition of files for
|
||||
compiling on MS Windows platform - tested successfully on XP and Vista.
|
||||
|
||||
|
||||
Version 2.1.3 2009-05-19
|
||||
=============
|
||||
Many improvements to the QZint GUI which is now renamed "Zint Barcode
|
||||
Studio 0.2". Added Japanese Postal Barcode, Code 49 and Channel Code and made
|
||||
corrections to Data Matrix ECC200 (Binary mode data compression terminates too
|
||||
soon), Aztec Code (Bug when automatically resizing after removing "all 0" and
|
||||
"all 1" codewords) and Code 128 (Extended ASCII characters become corrupt).
|
||||
|
||||
|
||||
Version 2.1.2 2009-03-01
|
||||
========================
|
||||
Added SVG output option. Improved Japanese character support including
|
||||
Unicode > Shift-JIS capability. Bugfixes for Data Matrix ECC200 (missing
|
||||
characters at end of string) and Codablock-F (K1/K2 check digit and row
|
||||
indicators above row 6).
|
||||
|
||||
|
||||
Version 2.1.1 2009-02-10
|
||||
========================
|
||||
Minor Data Matrix ECC200 bugfix and added HIBC options.
|
||||
|
||||
|
||||
Version 2.1 2009-01-31
|
||||
======================
|
||||
Reinstated Korea Post barcodes, harmonised bind and box options, moved
|
||||
Unicode handling into backend and added input_mode option, added size options
|
||||
to Data Matrix ECC200, added NULL character handling for Codablock-F, Code 128,
|
||||
Code 16k, Extended Code 39, Code 93, Telepen, Maxicode, Data Matrix ECC200 ECC
|
||||
200, PDF417 and MicroPDF417. Added GS1 support for Code 16k, Codablock-F and
|
||||
Aztec Code. Added scale and direct to stdout options. Rebult Data Matrix ECC200
|
||||
ECC 200 encoding algorithms to support NULL encoding and GS1 data encoding.
|
||||
|
||||
|
||||
Version 2.0 2008-11-18
|
||||
======================
|
||||
Made corrections to Aztec Code and tested output with bcTester. Added
|
||||
Aztec Runes, Micro QR Code and Data Matrix ECC200 ECC 000-140. Updated e-mail
|
||||
information.
|
||||
|
||||
|
||||
Version 2.0 beta r2 2008-10-19
|
||||
==============================
|
||||
Many corrections and bugfixes. (Code 11, Code 128, EAN-128,
|
||||
Aztec Code, Codablock-F, Code 16k, POSTNET, PLANET, NVE-18, PZN, Data Matrix
|
||||
ECC200, Maxicode and QR Code)
|
||||
|
||||
|
||||
Version 2.0 beta 2008-09-29
|
||||
===========================
|
||||
Added support for Aztec Code, Codablock-F, Code 32, EAN-14 and DAFT
|
||||
Code. Rearranged symbology numbers to match Tbarcode v8. Corrected a never
|
||||
ending loop bug in EAN-128.
|
||||
|
||||
|
||||
Version 1.6.2 2008-07-28
|
||||
========================
|
||||
Added KIX Code support and PNG image rotation. Corrected a bug
|
||||
affecting extended ASCII support in Code 128 and Code 16k.
|
||||
|
||||
|
||||
Version 1.6.1 2008-07-08
|
||||
========================
|
||||
Major restructuring of PNG generating code: Now draws UPCA and EAN
|
||||
symbols properly and puts human readable text into the image. Also corrected
|
||||
some nasty 'never ending loop' bugs in Code 128 and check digit bugs in PostNet
|
||||
and Planet.
|
||||
|
||||
|
||||
Version 1.6 2008-04-22
|
||||
======================
|
||||
Data Matrix ECC200, Maxicode and Australia Post now use common
|
||||
Reed-Solomon functions – this also fixes a bug in Maxicode error correction and
|
||||
replaces the last of the Lien code. Added PNG output for Maxicode symbols.
|
||||
Removed some useless code. Updated QR support for libqrencode v2.0.0.
|
||||
|
||||
|
||||
Version 1.5.5 2008-03-09
|
||||
========================
|
||||
Added composite symbology support. Corrected errors with GS1-128 and
|
||||
PDF417/MicroPDF417 byte processing. Transferred licence to GPL version 3.
|
||||
|
||||
|
||||
Version 1.5.4 2007-11-26
|
||||
========================
|
||||
Added GS1 DataBar (Reduced Space Symbology) support.
|
||||
|
||||
|
||||
Version 1.5.3 2007-10-10
|
||||
========================
|
||||
Made huge corrections to Maxicode support by removing and re-writing
|
||||
much of John's code. Maxicode now supports extended ASCII and modes 4, 5 and 6.
|
||||
|
||||
|
||||
Version 1.5.2 2007-09-26
|
||||
========================
|
||||
Added extended ASCII support to Code 16k. Corrected Code 128 error.
|
||||
Added Maxicode support by integrating code by John Lien.
|
||||
|
||||
|
||||
Version 1.5.1 2007-09-03
|
||||
========================
|
||||
Added formatting code to EPS output of EAN and UPC symbols according
|
||||
to EN 797:1996. Checked against and, where appropriate, altered or corrected to
|
||||
comply with ISO 16388 and ISO 15417 including Latin-1 support. Altered default
|
||||
image settings, added automatic ITF border. Corrected error with USPS OneCode.
|
||||
Tidied up Code 39 quite a bit, added Mod 43 options.
|
||||
|
||||
|
||||
Version 1.5 2007-08-12
|
||||
======================
|
||||
Pulled everything together to make an API. Corrected errors with EAN-13,
|
||||
PDF417 and LOGMARS. Added EPS output. Added QR Code support using libqrencode.
|
||||
Corrected ISBN verification error. Re-compiled documentation in HTML form. Put
|
||||
in place proper error handling routines. --font option removed. Encoding is now
|
||||
done with a restructured zint_symbol structure. Added make install option and
|
||||
optional QR Code support to Makefile. Corrected minor problem with 4-State
|
||||
Codes. Restructured code into fewer source code files. Added MicroPDF417
|
||||
support.
|
||||
|
||||
|
||||
Version 1.4 2007-06-20
|
||||
======================
|
||||
Added NVE-18 support. Corrected some problems with compilation and input
|
||||
verification. Command line option handling now uses getopt(), and all the
|
||||
switches have changed. Added –font option.
|
||||
|
||||
|
||||
Version 1.3 2007-06-13
|
||||
======================
|
||||
Supports USPS OneCode and LOGMARS. Brought all usage information into
|
||||
one User Manual document.
|
||||
|
||||
|
||||
Version 1.2 2007-05-28
|
||||
======================
|
||||
Supports Data Matrix ECC200 (by absorption of IEC16022 code by Stefan
|
||||
Schmidt et al). Added reverse colours, FIM, MSI/Plessey Modulo 11 and Modulo
|
||||
11/10. Corrected Code 16k check digit calculation.
|
||||
|
||||
|
||||
Version 1.1 2007-04-26
|
||||
======================
|
||||
Added more derivatives (Code 2 of 5 Matrix, IATA and Data Logic,
|
||||
Truncated PDF417, Deutsche Post Leitcode and Identcode, Pharmazentralnummer,
|
||||
Planet) and Flattermarken. Tidied up 2 of 5 code.
|
||||
|
||||
|
||||
Version 1.0 2007-04-20
|
||||
======================
|
||||
Corrected problem with escape character codes. Supports PDF417. This
|
||||
completes the list of features I originally wanted (plus a few more), hence
|
||||
skip to version 1.0.
|
||||
|
||||
|
||||
Version 0.6 2007-04-01
|
||||
======================
|
||||
Added Plessey and some derivative codes (EAN-128, Code 128 subset B,
|
||||
Auspost Reply, Auspost Routing, Auspost Redirect, ITF-14). Tidied up code
|
||||
again: separated symbologies into more files and put all lookup tables into
|
||||
arrays (much reducing the amount of code, especially for Code 39e and Code 93).
|
||||
Errors now output to stderr. Added proper input verification. Distribution now
|
||||
packs with HTML pages instead of separate README. Outputs to PNG. Outputs
|
||||
colour. User variable whitespace and border width. Box option. Fixed EAN add-on
|
||||
bug. Added whitespace and height options. Project name changed to Zint to avoid
|
||||
conflict with extant trade name. Added escape character input.
|
||||
|
||||
|
||||
Version 0.5 2007-02-28
|
||||
======================
|
||||
Added Australia Post 4-State Barcodes and Pharmacode (1 and 2 track).
|
||||
4-state codes now draw with correct height/width ratio.
|
||||
|
||||
|
||||
Version 0.4 2007-01-15
|
||||
======================
|
||||
Added barcode stacking (now stacks up to 16 barcodes) and Code16k (stub).
|
||||
|
||||
|
||||
Version 0.3 2006-12-30
|
||||
======================
|
||||
Added MSI/Plessey Mod 10 check and 2 x Mod 10 check options, Telepen
|
||||
ASCII and Telepen numeric, Postnet, RM4SCC. Code has been tidied up quite a
|
||||
bit. Bind option added.
|
||||
|
||||
|
||||
Version 0.2 2006-12-12
|
||||
======================
|
||||
Added Code 128 (which is now the default), Code 11, Code 2 of 5, Add-on
|
||||
codes EAN-2 and EAN-5 parity and MSI/Plessey without check digit.
|
||||
|
||||
|
||||
Version 0.1 (as Zebar) 2006-11-13
|
||||
=================================
|
||||
Draws UPC-A. UPC-E, EAN-8, EAN-13, Interlaced 2 of 5,
|
||||
Codabar, Code 39, Extended Code 39 and Code 93 barcodes and Add-on codes EAN-2
|
||||
and EAN-5 without parity.
|
335
README
335
README
@ -7,340 +7,41 @@ this capability into your own programs.
|
||||
Zint is able to encode data in the following formats:
|
||||
|
||||
Code 11, Standard Code 2 of 5, IATA Code 2 of 5, Industrial Code 2 of 5,
|
||||
Interleaved Code 2 of 5, Code 2 of 5 Data Logic, ITF-14, Deutche Post
|
||||
Leitcode, Deutche Post Identcode, UPC-A, UPC-E, EAN-2, EAN-5, EAN-8,
|
||||
EAN-13, UK Plessey, MSI Plessey, Telepen Alpha, Telepen Numeric, Code 39,
|
||||
Extended Code 39, Code 93, PZN, Code 23, LOGMARS, Codabar, Pharmacode, Code
|
||||
128, EAN-128, NVE-18, Code 16k, PDF417, MicroPDF417, Two-Track Pharmacode,
|
||||
PostNet, PLANET, Australia Post 4-State Symbols, RM4SCC, USPS OneCode, GS1
|
||||
DataBar, DataBar-14, DataBar Limited, DataBar Extended, DataBar Stacked,
|
||||
Composite Symbology, Data Matrix, QR Code, Maxicode, Aztec Code, EAN-13,
|
||||
Micro QR, Korea Post Barcode, HIBC Code 128, HIBC Code 39, HIBC Data Matrix,
|
||||
HIBC PDF417, HIBC MicroPDF417, HIBC QR Code, HIBC Aztec Code, Japanese Postal
|
||||
Code, Code 49, Channel Code, Code One, Grid Matrix, FIM and Flattermarken,
|
||||
Codablock-F, DotCode, Han Xin Code, rMQR and Ultracode.
|
||||
Interleaved Code 2 of 5, Code 2 of 5 Data Logic, ITF-14, Deutshe Post Leitcode,
|
||||
Deutshe Post Identcode, UPC-A, UPC-E, EAN-2, EAN-5, EAN-8, EAN-13, ISBN, UK
|
||||
Plessey, MSI Plessey, Telepen Alpha, Telepen Numeric, Code 39, Extended Code 39,
|
||||
Code 93, PZN, Code 32, LOGMARS, Codabar, Pharmacode, Code 128, GS1-128, NVE-18,
|
||||
Code 16k, PDF417, MicroPDF417, Two-Track Pharmacode, POSTNET, PLANET, Australia
|
||||
Post 4-State Symbols, RM4SCC, Dutch Post KIX, USPS Intelligent Mail, GS1 DataBar
|
||||
Omnidirectional, GS1 DataBar Limited, GS1 DataBar Expanded, GS1 DataBar Stacked,
|
||||
Composite Symbology, Data Matrix, QR Code, MaxiCode, Aztec Code, Aztec Runes,
|
||||
EAN-14, Micro QR, Korea Post Barcode, HIBC Code 128, HIBC Code 39, HIBC Data
|
||||
Matrix, HIBC PDF417, HIBC MicroPDF417, HIBC QR Code, HIBC Codablock-F, HIBC
|
||||
Aztec Code, Japanese Postal Code, Code 49, Channel Code, Code One, Grid Matrix,
|
||||
DAFT, FIM and Flattermarken, Codablock-F, DotCode, Han Xin Code, rMQR,
|
||||
Ultracode, UPNQR, VIN, and DPD Code.
|
||||
|
||||
Output can be saved as BMP, EPS, GIF, PCX, TIF, EMF, PNG or SVG.
|
||||
|
||||
|
||||
PROJECT HISTORY
|
||||
---------------
|
||||
Please see "ChangeLog" in the project root directory.
|
||||
|
||||
Version 2.5.0:
|
||||
Support for DotCode and Han Xin code. ECI code processing. Output to BMP, GIF
|
||||
and PCX. Added bold and small text options. Reintroduction of Codablock-F.
|
||||
Many minor fixes and improvements.
|
||||
|
||||
Version 2.5.1:
|
||||
Numerous bugfixes, especially with Data Matrix thanks to extensive testing
|
||||
by brunt@SF
|
||||
|
||||
Version 2.6.0:
|
||||
Update front end to Qt5. Output to EMF and TIF. Copy to clipboard. Update
|
||||
to latest draft of DMRE. Usual bugfixes.
|
||||
|
||||
Version 2.6.1:
|
||||
Library bugfixes: EDIFACT unlatch in Data Matrix, Add UPNQR, Improved Aztec
|
||||
data compression, Detect Code 128 data too long, Make error codes consistent.
|
||||
GUI improvements: Additional clipboard options, remove border width bug,
|
||||
remove changing background colour bug, remember more settings and make GUI
|
||||
more consistent with user expectations. All windows now resizable and more
|
||||
information given when batch processing.
|
||||
|
||||
Version 2.6.2:
|
||||
Further bugfixes in Aztec and DotCode. Expand escape sequence support
|
||||
to API and GUI. Handle UTF BOM. Bugfix raster images of Maxicode.
|
||||
|
||||
Version 2.6.3:
|
||||
New symbology Royal Mail 4-state Mailmark. Added North America VIN verification.
|
||||
Bugfixes for TIF and EMF output and escape character handling.
|
||||
|
||||
Version 2.6.4:
|
||||
Fixed bugs: EMF output, maxicode plot/content
|
||||
Datamatrix DMRE updated to the ISO/IEC29158 version. This is incompatible in the way,
|
||||
that the old -vers numbers for DMRE are re-assigned.
|
||||
The separator of GS1-datamatrix may be switched from FNC1 to GS.
|
||||
GS1 field length check AI 8009 and 7230 to 7239 currected.
|
||||
|
||||
Version 2.6.5:
|
||||
Fixed bugs:
|
||||
backend/main.c was missing
|
||||
Maxicode bullseye rastering for scale = 0.5
|
||||
Crash in uto to eci.
|
||||
eci ISO 8859-16 table missing data line
|
||||
upce check for 7 digit input (causes crash) and BARCODE_UPCE_CHK -> BARCODE_UPCE mapping removed
|
||||
US imail check for invalid barcode identifier and allow 0/5/9/11 length zip
|
||||
maxicode code set correction
|
||||
cmake flags for debugging and sanitize options
|
||||
unit tests for the changes, with a simple test suite based on qrencode/tests
|
||||
|
||||
Version 2.6.6:
|
||||
Fixed bugs:
|
||||
Ticket 161: PDF row size may be set
|
||||
Ticket 155: PDF numeric compaction
|
||||
Ticket 164: crash due to call of svg_plot withnull vector
|
||||
Ticket 119: Crash on bullseye raster drawing
|
||||
qtzint: Micro-QR version option choice corrected (+1 missing).
|
||||
Datamatrix: code corruption when ECI was encoded and base256 encoding was automatically chosen.
|
||||
|
||||
Version 2.6.7 2019-10-07:
|
||||
|
||||
Changes:
|
||||
Ticket 127: Allow to code ECI 3 if explicitly given for debug purposes.
|
||||
***Incompatible change**
|
||||
"--eci 3" now leads to included ECI information.
|
||||
"--eci 0" may now be used to not include any ECI information.
|
||||
The default of the parameter changed from 3 to 0.
|
||||
|
||||
Fixed bugs:
|
||||
Ticket 146, 165: fix wrong encoding of RSS composite codes
|
||||
|
||||
Version 2.7.0 2019-12-05:
|
||||
Changes:
|
||||
- Automatic height option added to qzint
|
||||
- DotCode in line with new specification
|
||||
- New GS1 AIs 7240, 235, 417, 7040, 8026, updated checks for 7007, 8008
|
||||
- New Symbology rMQR
|
||||
- QR and Qridmatrix optimisation for GB2312
|
||||
- removed depreciated interface for gLabels program. Please use current interface.
|
||||
|
||||
Fixed bugs:
|
||||
- Many improvements in composite codes
|
||||
- SVG output corrected for messages containing "<" and "&".
|
||||
- GS1-128 and RSS may only be used with GS1 contents
|
||||
- Han Xin chinese character handling
|
||||
|
||||
Version 2.7.1 2020-02-01:
|
||||
Changes:
|
||||
- QR encoding optimized to get smaller code matrix results
|
||||
- PDF417: remove obsolete codeword number option in qzint.
|
||||
Option removed in qtzint.
|
||||
- Removed annex B (3 digit country codes) and annex C (GS1 General Specification)
|
||||
from the manual. This material may be found elsewhere.
|
||||
- MAC homebrew remark added to the documentation
|
||||
- Correct cmake file to match BSD-3-clause licence
|
||||
Bugs:
|
||||
- Correct uninitialized warning in gridmatrix.call
|
||||
- do not export internal functions
|
||||
- raster painting of UPC-A bound check
|
||||
- pdf417 documentation corrected: change flag -security to -secure
|
||||
- Dot Code encoding ECI number corrected
|
||||
- Corrected postscript plotting error
|
||||
- Datamatrix: corrected possible buffer overrun in 3 characters to 2 byte
|
||||
encodings.
|
||||
- In 2.7.0 removed interface "ZBarcode_Render" still declared
|
||||
- vc6 make was missing (trivial) resource.h
|
||||
|
||||
Version 2.8.0 2020-04-10:
|
||||
Changes:
|
||||
(New) Tests for auspost, codablock, composite, dotcode, general, telepen, upcean,
|
||||
all output formats,
|
||||
- QR, Han Xin, Grid Matrix: the multi byte compaction schemes (ex: Kanji)
|
||||
are used by some decoders as codepage information (Ex: GB2312) and output
|
||||
may be translated to UTF-8. This may destroy the data in a not controlable
|
||||
manner.
|
||||
In consequence, multibyte compaction schemes are disabled by default.
|
||||
The new option --fullmultibyte (option_3 = ZINT_FULL_MULTIBYTE) enables this
|
||||
optimisation.
|
||||
- Add new symbology "Ultra Code" with the ability to output colour codes.
|
||||
Bugs:
|
||||
- Ticket 181 penetration test found many bugs:
|
||||
- Auspost: null bytes in content caused segfault
|
||||
- Codablock: data 0x1a..0x1f caused segfault
|
||||
- Dotcode: overrun in binary mode, overrun in codeword_array buffer
|
||||
Correct encoding of HT/FS/GS/RS when shifting to code set B
|
||||
- empty or unreadable input file
|
||||
- telepen: buffer overflow
|
||||
- EANUCC: buffer overflow on multiple + (multiple extension bars)
|
||||
- Maxicode: index overrun on numeric compaction
|
||||
- CodeOne: Simple i indexing not sp + i in C1_ASCII numeric latch loop.
|
||||
- Aztec: free memory
|
||||
- Ticket 183: Databar stacked separator correction
|
||||
- Ticket 182: Output bitmap type was char, where some targets assigned 0
|
||||
if pixel colour >127 (e.g. negative). API change to use unsigned char.
|
||||
- HanXin: wrong codepage, gb2312 instead gb18030.
|
||||
- PDF417: corrected alloced sizes to max characters
|
||||
- Ticket 189: FNC1 encodation fixed (FLG(0) missing after FLG(n))
|
||||
- PCX format: added missing bytes_per_line if bitmap width is odd.
|
||||
|
||||
Version 2.9.0 2020-07-31:
|
||||
Changes:
|
||||
- Dotcode: adopt to AIM DOC Revision 4
|
||||
- New option "-separator=" for zint to specify the separator height of stacked
|
||||
symbologies.
|
||||
- make internal routines invisible by a static function definition.
|
||||
- CODE11: make adding check digits an option, selectable to 2 (default as now),
|
||||
1 or none
|
||||
- LOGMARS restrict max length to 30 per MIL-STD-1189 Rev. B; make check digit
|
||||
optional
|
||||
- CODE39/EXCODE39: max length now 85
|
||||
- VIN code extended to international licence plates
|
||||
- CODABAR: 3 data characters minimum (plus start/stop), check digit option added
|
||||
- Channel Code: performance improvement
|
||||
- QT GUI:
|
||||
- GRIDMATRIX/HX/MQR/QRCODE/RMQR: allow separate selection of size/ECC
|
||||
- add DAFT and VIN Symbolgies
|
||||
- Separarator option for DATAMATRIX
|
||||
- Ticket 162: parse escape sequences
|
||||
- gui element reassigments
|
||||
- UPC/EAN/ITF-14 Composite: Ticket 72: new option --addongap (default:9) to set
|
||||
the gap between code and composite.
|
||||
- TCL Backend: The following symbology names were renamed:
|
||||
- Matrix2of5 -> Standard2of5
|
||||
- PDF417Trunc -> PDF417Compact
|
||||
- RSS14Stacked -> GS1DataBarStacked
|
||||
- RSS14Stacked -> GS1DataBarStacked
|
||||
- RSS14StackedOmni -> GS1DataBarSstackedOmni
|
||||
- RSS14ExpandedStacked -> GS1DataBarExpandedStacked
|
||||
- OneCode -> USPSIntelligentMail
|
||||
- EAN128-CC -> GS1-128-CC
|
||||
- RSS14-CC -> GS1DataBarOmni-CC
|
||||
- RSSLimited-CC -> GS1DataBarLimited-CC
|
||||
- RSSExpandedStacked-CC -> GS1DataBarExpanded-CC
|
||||
- RSSEXPanded-CC -> GS1DataBarExpanded-CC
|
||||
- RSS14Stacked-CC -> GS1DataBarStacked-CC
|
||||
- RSS14Omni-CC -> GS1DataBarStackedOmni-CC
|
||||
- RSSExpandedStacked-CC -> GS1DataBarExpandedStacked-CC
|
||||
*** Potential incompatibility ***
|
||||
- API Symbol names changed but old names preserved in zint.h
|
||||
- BARCODE_C25MATRIX -> BARCODE_C25STANDARD
|
||||
- BARCODE_EAB128_CC -> BARCODE_GS1_128
|
||||
- BARCODE_RSS14 -> BARCODE_DBAR_OMN
|
||||
- BARCODE_RSS_LTD -> BARCODE_DBAR_LTD
|
||||
- BARCODE_RSS_EXP -> BARCODE_DBAR_EXP
|
||||
- BARCODE_PDF417TRUNC -> BARCODE_PDF417COMP
|
||||
- BARCODE_RSS14STACK -> BARCODE_DBAR_STK
|
||||
- BARCODE_RSS14STACK_OMNI -> BARCODE_DBAR_OMNSTK
|
||||
- BARCODE_RSS_EXPSTACK -> BARCODE_DBAR_EXPSTK
|
||||
- BARCODE_ONECODE -> BARCODE_USPS_IMAIL
|
||||
- BARCODE_EAN128_CC -> BARCODE_GS1_128_CC
|
||||
- BARCODE_RSS14_CC -> BARCODE_DBAR_OMN_CC
|
||||
- BARCODE_RSS_LTD_CC -> BARCODE_DBAR_LTD_CC
|
||||
- BARCODE_RSS_EXP_CC -> BARCODE_DBAR_EXP_CC
|
||||
- BARCODE_RSS14STACK_CC -> BARCODE_DBAR_STK_CC
|
||||
- BARCODE_RSS_EXPSTACK_CC -> BARCODE_DBAR_EXPSTK_CC
|
||||
|
||||
Bugs:
|
||||
- Ticket 185 EMF export corrections
|
||||
- fine scaling by the use of float arithmetic
|
||||
- full header (extension1&2) with correct size field
|
||||
- Ticket 190: Aztec buffer overrun fixed
|
||||
- Ticket 191 suppress clang-tidy warnings: raster.c, composite.c, qr.c
|
||||
- Ultracode internal encoding bugs, ECI 899
|
||||
- GS1 data: exclude DEL character
|
||||
- Ticket 192: missing malloc.h include for Windows compilers.
|
||||
- Correct GS1 AI 253 & 255 length from 14 to 13
|
||||
- Codablock F changes:
|
||||
- FNC4 may not be split over rows.
|
||||
- Use Code128 routine for one line Codablock FIM
|
||||
- Correct column range to 9 ... 62
|
||||
- allow new options: row count and column count, border_width and HIBC mode
|
||||
- pad correctly empty and last row
|
||||
- separator length correction
|
||||
- Code128 changes:
|
||||
- Correctly encode CodeA charset with control-character only data
|
||||
- Improve coding of Extended ASCII (FNC4)
|
||||
- Checksum calculation overflow protection
|
||||
- EAN128 may reduce length
|
||||
- Check for incomplete escape sequences on data specification: "\" without
|
||||
following character.
|
||||
- Code16K fixes: remove extended ASCII latch, pad character
|
||||
- Restructuring to have common code centralized:
|
||||
- Code128 routines for Codablock&Code16K
|
||||
- output.c has common routines from raster.c and symbologies.
|
||||
- HIBC_39: restrict max length to 68 otherwise to avoid overrun
|
||||
- Code One: protect agains overrun
|
||||
- Telepen: allow DEL
|
||||
- GS1 Databar/ GS1-128 Composite:
|
||||
- Separator bar corrections
|
||||
- Ticket 200: spurious additional row
|
||||
- Correct names in GUI
|
||||
- Compact PDF417:
|
||||
- Add missing stop pattern.
|
||||
- Rename in GUI: "PDF417 Truncated" to "Compact PDF417".
|
||||
- PDF417: Optimize text compaction mode switch.
|
||||
- Human readable representation: Code128, Code39, Code93 special characters
|
||||
are shown by a blank.
|
||||
- ITF14: Ticket 201: allow bind option
|
||||
|
||||
Version 2.9.1 2020-08-04:
|
||||
Changes:
|
||||
- Ticket 122: Implement transparency support
|
||||
- Ticket 129: -nobackground option added
|
||||
- -fg and -bg may contain an alpha channel
|
||||
- structure zint_symbol may now contain an alpha channel as output
|
||||
- Added DPD Symbology
|
||||
- Add support for Unicode escape characters
|
||||
Bugs:
|
||||
- EMF text colour does not change
|
||||
- Fix QPainterPath dependency for Visual Studio
|
||||
|
||||
Version 2.9.2 not released yet:
|
||||
***Incompatible change**
|
||||
- Add halign to struct zint_vector_string NOTE: backward incompatible UPC/EAN
|
||||
|
||||
Changes:
|
||||
- Command line switches -d or -i for code data may now be at any position.
|
||||
- Add rotation for vector formats
|
||||
- Change double to float for performance in many internal places
|
||||
- Ticket 197: Allow scaling in substeps.
|
||||
Warn if scaling < 0.5 as pixels are lost.
|
||||
- Ticket 197: add output option to bypass time-intensive buffer_plot()
|
||||
(OUT_BUFFER_INTERMEDIATE)
|
||||
- Reduce BMP size by using 1 bit per pixel (except Ultracode)
|
||||
- Remove backend Qt interface and incorporate into frontend GUI
|
||||
- Add ZPL compatibility mode (preliminary)
|
||||
- Remove version info from zint.h and put in zintconfig.h via zintconfig.h.in
|
||||
- Add ZBarcode_Cap()
|
||||
- Add GUI symbology filter, separate settings for each symbology
|
||||
- Require cmake 3.5, use PNG::PNG and add Qt6 build option
|
||||
- Make library fully stack-based so reentrant apart from file operations
|
||||
- Performance improvements (large data) for Aztec, Han Xin, Grid Matrix, PDF417
|
||||
and QR
|
||||
- Option scmvv for MaxiCode #212; postcode needn't be space-filled
|
||||
- eci: Add support for all ECIs (Big5, Korean, UCS-2BE)
|
||||
- CLI: Handle UTF-8 args on Windows; -b <barcode name>
|
||||
- DATAMATRIX: make EOD encodation strictly ISO 16022 compliant
|
||||
- png.c: Use palette for file size savings
|
||||
- tif.c: Use palette/bilevel/LZW to reduce file size, alpha/CMYK support
|
||||
- Option gs1parens (GS1PARENS_MODE)
|
||||
- MAXICODE: Rejig raster output to more closely match ISO 16023:2000
|
||||
- C25STANDARD/C25INTER/C25IATA/C25LOGIC/C25IND: add check digit option (#216)
|
||||
|
||||
Bugs:
|
||||
- Code16k selects GS1 mode by default in GUI
|
||||
- Ultracode: use white pixels instead background for white modules.
|
||||
- EMF: fix Ultracode colours.
|
||||
- Ultracode: fix count of codewords when using reader init mode
|
||||
- Databar Limited: add 5 right guard spaces (ISO/IEC 24723:2010 6.2 (e))
|
||||
- Data Matrix: avoid unnecessary latch in X12 mode at end of data, #208
|
||||
- Data Matrix: fix eod shift -> 0 pad
|
||||
- POSTNET/PLANET: remove extra 1 module space
|
||||
- Aztec: fix bit-stuffing (again!) and Aztec Rune: fix for data >= 128
|
||||
- EAN composite: allow for check digit + buffer overflow for too long add-on
|
||||
- Han Xin fix 0xFFE terminator
|
||||
- GUI: Use UTF-8 for QSettings (non-ASCII was getting garbled on restore)
|
||||
- DOTCODE: Fix best_mask -> high_score prime test
|
||||
- CODEONE: various fixes, ECI support
|
||||
- #218 Prevent buffer overflow in ean_leading_zeroes by checking max lengths
|
||||
- MAXICODE: fix mask typos for ECI 3/4 bytes
|
||||
- Fix UPCEAN small font ignored/disabled (introduced [1adba1])
|
||||
- get_best_eci: check UTF-8 before returning 26
|
||||
- MAXICODE: fix shifting from sets C/D/E to A/B (only latch available)
|
||||
- EAN14, NVE18: fix checksum calc for zero-filled input
|
||||
|
||||
CONTACT US
|
||||
----------
|
||||
The home of Zint is:
|
||||
|
||||
<http://www.sourceforge.net/projects/zint>
|
||||
<http://www.sourceforge.net/projects/zint>
|
||||
|
||||
The code is now also mirrored at:
|
||||
|
||||
<https://github.com/woo-j/zint>
|
||||
<https://github.com/woo-j/zint>
|
||||
|
||||
For feature requests or bug reports please either join the mailing list at
|
||||
|
||||
<https://lists.sourceforge.net/lists/listinfo/zint-barcode>
|
||||
<https://lists.sourceforge.net/lists/listinfo/zint-barcode>
|
||||
|
||||
or add a ticket on the project's SourceForge.
|
||||
|
||||
|
273
docs/manual.txt
273
docs/manual.txt
@ -76,9 +76,9 @@ Reader Initialisation: Some symbologies allow a special character to be included
|
||||
|
||||
ECI: The ECI mechanism allows for multi-language data to be encoded in
|
||||
symbols which would usually support only Latin-1 (ISO/IEC 8859-1)
|
||||
characters. This can be useful, for example, if you need to encode
|
||||
Cyrillic characters, but should be used with caution as not all scanners
|
||||
support this method.
|
||||
characters. This can be useful, for example, if you need to encode
|
||||
Cyrillic characters, but should be used with caution as not all scanners
|
||||
support this method.
|
||||
|
||||
Two other concepts that are important are raster and vector. Raster is a low
|
||||
level bitmap representation of an image. BMP, GIF, PCX, PNG and TIF are raster
|
||||
@ -105,7 +105,7 @@ cmake ..
|
||||
make
|
||||
sudo make install
|
||||
|
||||
The command line program can be accessed by typing
|
||||
The CLI command line program can be accessed by typing
|
||||
|
||||
zint {options}
|
||||
|
||||
@ -114,7 +114,7 @@ The GUI can be accessed by typing
|
||||
zint-qt
|
||||
|
||||
To test that the installation has been successful a shell script is included in
|
||||
the /frontend folder. To run the test type
|
||||
the frontend sub-directory. To run the test type
|
||||
|
||||
./test.sh
|
||||
|
||||
@ -151,7 +151,7 @@ brew install zint
|
||||
2.4 zint tcl backend
|
||||
--------------------
|
||||
The tcl backend may be built using the provided TEA build on Linux, Windows,
|
||||
Mac-OS and Android. For Windows, a MS-VC6 makefile is also available.
|
||||
Mac-OS and Android. For Windows, an MS-VC6 makefile is also available.
|
||||
|
||||
|
||||
3. Using Zint Barcode Studio
|
||||
@ -566,7 +566,7 @@ Latin-1 then you should check that the resulting barcode can be understood by
|
||||
your target barcode reader. Zint will generate a warning message when an ECI
|
||||
code that has not been explicitly requested has been inserted into a symbol.
|
||||
|
||||
GS1 data can be encoded in a number of symbologies. Application identifiers
|
||||
GS1 data can be encoded in a number of symbologies. Application Identifiers
|
||||
should be enclosed in [square brackets] followed by the data to be encoded (see
|
||||
6.1.11.3). To encode GS1 data use the --gs1 option. GS1 mode is assumed (and
|
||||
doesn't need to be set) for GS1-128, EAN-14, DataBar and Composite symbologies
|
||||
@ -820,8 +820,9 @@ size of the symbol. These options are discussed in section 6 of this guide.
|
||||
|
||||
5. Using the API
|
||||
================
|
||||
Zint has been written using the C language and currently only has an API for
|
||||
use with C language programs.
|
||||
Zint has been written using the C language and has an API for use with C/C++
|
||||
language programs. A Qt interface is available in the backend_qt sub-directory,
|
||||
and a Tcl interface is available in the backend_tcl sub-directory.
|
||||
|
||||
The libzint API has been designed to be very similar to that used by the GNU
|
||||
Barcode package. This allows easy migration from GNU Barcode to Zint. Zint,
|
||||
@ -931,8 +932,8 @@ allow you to do this:
|
||||
|
||||
int ZBarcode_Buffer(struct zint_symbol *symbol, int rotate_angle);
|
||||
|
||||
int ZBarcode_Encode_and_Buffer(struct zint_symbol *symbol, unsigned char *source,
|
||||
int length, int rotate_angle);
|
||||
int ZBarcode_Encode_and_Buffer(struct zint_symbol *symbol,
|
||||
unsigned char *source, int length, int rotate_angle);
|
||||
|
||||
int ZBarcode_Encode_File_and_Buffer(struct zint_symbol *symbol, char *filename,
|
||||
int rotate_angle);
|
||||
@ -985,18 +986,18 @@ you to do this:
|
||||
int ZBarcode_Buffer_Vector(struct zint_symbol *symbol, int rotate_angle);
|
||||
|
||||
int ZBarcode_Encode_and_Buffer_Vector(struct zint_symbol *symbol,
|
||||
unsigned char *source, int length, int rotate_angle);
|
||||
unsigned char *source, int length, int rotate_angle);
|
||||
|
||||
int ZBarcode_Encode_File_and_Buffer_Vector(struct zint_symbol *symbol,
|
||||
char *filename, int rotate_angle);
|
||||
char *filename, int rotate_angle);
|
||||
|
||||
Here the "vector" pointer is set to a header which contains pointers to lists
|
||||
of structures representing the various elements of the barcode: rectangles,
|
||||
hexagons, strings and circles. To draw the barcode, each of the element types is
|
||||
iterated in turn, and using the information stored is drawn by a rendering
|
||||
system. For instance, to draw a barcode using a rendering system with
|
||||
"prepare_canvas()", "draw_rect()", "draw_hexagon()", "draw_string()", and
|
||||
"draw_circle()" routines available:
|
||||
prepare_canvas(), draw_rect(), draw_hexagon(), draw_string(), and draw_circle()
|
||||
routines available:
|
||||
|
||||
struct zint_vector_rect *rect;
|
||||
struct zint_vector_hexagon *hexagon;
|
||||
@ -1004,31 +1005,31 @@ struct zint_vector_string *string;
|
||||
struct zint_vector_circle *circle;
|
||||
|
||||
prepare_canvas(symbol->vector->width, symbol->vector->height, symbol->scale,
|
||||
symbol->fgcolour, symbol->bgcolor, rotate_angle);
|
||||
symbol->fgcolour, symbol->bgcolor, rotate_angle);
|
||||
|
||||
rect = symbol->vector->rectangles;
|
||||
while (rect) {
|
||||
draw_rect(rect->x, rect->y, rect->width, rect->height, rect->colour);
|
||||
rect = rect->next;
|
||||
draw_rect(rect->x, rect->y, rect->width, rect->height, rect->colour);
|
||||
rect = rect->next;
|
||||
}
|
||||
|
||||
hexagon = symbol->vector->hexagons;
|
||||
while (hexagon) {
|
||||
draw_hexagon(hexagon->x, hexagon->y, hexagon->diameter, hexagon->rotation):
|
||||
hexagon = hexagon->next;
|
||||
draw_hexagon(hexagon->x, hexagon->y, hexagon->diameter, hexagon->rotation):
|
||||
hexagon = hexagon->next;
|
||||
}
|
||||
|
||||
string = symbol->vector->strings;
|
||||
while (string) {
|
||||
draw_string(string->x, string->y, string->fsize, string->rotation,
|
||||
string->halign, string->text, string->length):
|
||||
string = string->next;
|
||||
draw_string(string->x, string->y, string->fsize, string->rotation,
|
||||
string->halign, string->text, string->length):
|
||||
string = string->next;
|
||||
}
|
||||
|
||||
circle = symbol->vector->circles;
|
||||
while (circle) {
|
||||
draw_circle(circle->x, circle->y, circle->diameter, circle->colour):
|
||||
circle = circle->next;
|
||||
draw_circle(circle->x, circle->y, circle->diameter, circle->colour):
|
||||
circle = circle->next;
|
||||
}
|
||||
|
||||
5.6 Setting Options
|
||||
@ -1411,7 +1412,7 @@ GS1_MODE | Encodes GS1 data using FNC1 characters.
|
||||
|
|
||||
ESCAPE_MODE | Process input data for escape sequences.
|
||||
GS1PARENS_MODE | Parentheses (round brackets) used in input data instead of
|
||||
| square brackets to delimit GS1 application identifiers
|
||||
| square brackets to delimit GS1 Application Identifiers
|
||||
| (parentheses must not otherwise occur in the data).
|
||||
------------------------------------------------------------------------------
|
||||
|
||||
@ -1875,7 +1876,7 @@ components.
|
||||
6.1.12.1 DataBar Omnidirectional and DataBar Truncated
|
||||
------------------------------------------------------
|
||||
Previously known as RSS-14 this standard encodes a 13 digit item code. A check
|
||||
digit and application identifier of (01) are added by Zint. (A 14 digit code
|
||||
digit and Application Identifier of (01) are added by Zint. (A 14 digit code
|
||||
that appends the check digit may be given, in which case the check digit will be
|
||||
verified.) To produce a truncated symbol set the symbol height to a value
|
||||
between 32 and 13. Normal DataBar Omnidirectional symbols should have a height
|
||||
@ -3006,223 +3007,7 @@ those owners, companies or organisations.
|
||||
|
||||
7.3 Version Information
|
||||
-----------------------
|
||||
v0.1 - (as Zebar) Draws UPC-A. UPC-E, EAN-8, EAN-13, Interlaced 2 of 5,
|
||||
Codabar, Code 39, Extended Code 39 and Code 93 barcodes and Add-on codes EAN-2
|
||||
and EAN-5 without parity. 13/11/2006
|
||||
|
||||
v0.2 - Added Code 128 (which is now the default), Code 11, Code 2 of 5, Add-on
|
||||
codes EAN-2 and EAN-5 parity and MSI/Plessey without check digit. 12/12/2006
|
||||
|
||||
v0.3 - Added MSI/Plessey Mod 10 check and 2 x Mod 10 check options, Telepen
|
||||
ASCII and Telepen numeric, Postnet, RM4SCC. Code has been tidied up quite a
|
||||
bit. Bind option added. 30/12/2006
|
||||
|
||||
v0.4 - Added barcode stacking (now stacks up to 16 barcodes) and Code16k
|
||||
(stub). 15/1/2007
|
||||
|
||||
v0.5 - Added Australia Post 4-State Barcodes and Pharmacode (1 and 2 track).
|
||||
4-state codes now draw with correct height/width ratio. 28/2/2007
|
||||
|
||||
v0.6 - Added Plessey and some derivative codes (EAN-128, Code 128 subset B,
|
||||
Auspost Reply, Auspost Routing, Auspost Redirect, ITF-14). Tidied up code
|
||||
again: separated symbologies into more files and put all lookup tables into
|
||||
arrays (much reducing the amount of code, especially for Code 39e and Code 93).
|
||||
Errors now output to stderr. Added proper input verification. Distribution now
|
||||
packs with HTML pages instead of separate README. Outputs to PNG. Outputs
|
||||
colour. User variable whitespace and border width. Box option. Fixed EAN add-on
|
||||
bug. Added whitespace and height options. Project name changed to Zint to avoid
|
||||
conflict with extant trade name. Added escape character input. 1/4/2007
|
||||
|
||||
v1.0 - Corrected problem with escape character codes. Supports PDF417. This
|
||||
completes the list of features I originally wanted (plus a few more), hence
|
||||
skip to version 1.0. 20/4/2007
|
||||
|
||||
v1.1 - Added more derivatives (Code 2 of 5 Matrix, IATA and Data Logic,
|
||||
Truncated PDF417, Deutsche Post Leitcode and Identcode, Pharmazentralnummer,
|
||||
Planet) and Flattermarken. Tidied up 2 of 5 code. 26/4/2007
|
||||
|
||||
v1.2 - Supports Data Matrix ECC200 (by absorption of IEC16022 code by Stefan
|
||||
Schmidt et al). Added reverse colours, FIM, MSI/Plessey Modulo 11 and Modulo
|
||||
11/10. Corrected Code 16k check digit calculation. 28/5/2007
|
||||
|
||||
v1.3 - Supports USPS OneCode and LOGMARS. Brought all usage information into
|
||||
one User Manual document. 13/6/2007
|
||||
|
||||
v1.4 - Added NVE-18 support. Corrected some problems with compilation and input
|
||||
verification. Command line option handling now uses getopt(), and all the
|
||||
switches have changed. Added –font option. 20/6/2007
|
||||
|
||||
v1.5 - Pulled everything together to make an API. Corrected errors with EAN-13,
|
||||
PDF417 and LOGMARS. Added EPS output. Added QR Code support using libqrencode.
|
||||
Corrected ISBN verification error. Re-compiled documentation in HTML form. Put
|
||||
in place proper error handling routines. --font option removed. Encoding is now
|
||||
done with a restructured zint_symbol structure. Added make install option and
|
||||
optional QR Code support to Makefile. Corrected minor problem with 4-State
|
||||
Codes. Restructured code into fewer source code files. Added MicroPDF417
|
||||
support. 12/8/2007
|
||||
|
||||
v1.5.1 - Added formatting code to EPS output of EAN and UPC symbols according
|
||||
to EN 797:1996. Checked against and, where appropriate, altered or corrected to
|
||||
comply with ISO 16388 and ISO 15417 including Latin-1 support. Altered default
|
||||
image settings, added automatic ITF border. Corrected error with USPS OneCode.
|
||||
Tidied up Code 39 quite a bit, added Mod 43 options. 3/9/2007
|
||||
|
||||
v1.5.2 - Added extended ASCII support to Code 16k. Corrected Code 128 error.
|
||||
Added Maxicode support by integrating code by John Lien. 26/9/2007
|
||||
|
||||
v1.5.3 - Made huge corrections to Maxicode support by removing and re-writing
|
||||
much of John's code. Maxicode now supports extended ASCII and modes 4, 5 and 6.
|
||||
10/10/2007
|
||||
|
||||
v1.5.4 - Added GS1 DataBar (Reduced Space Symbology) support. 26/11/2007
|
||||
|
||||
v1.5.5 - Added composite symbology support. Corrected errors with GS1-128 and
|
||||
|
||||
PDF417/MicroPDF417 byte processing. Transferred licence to GPL version 3.
|
||||
9/3/2008
|
||||
|
||||
v1.6 - Data Matrix ECC200, Maxicode and Australia Post now use common
|
||||
Reed-Solomon functions – this also fixes a bug in Maxicode error correction and
|
||||
replaces the last of the Lien code. Added PNG output for Maxicode symbols.
|
||||
Removed some useless code. Updated QR support for libqrencode v2.0.0. 22/4/2008
|
||||
|
||||
v1.6.1 - Major restructuring of PNG generating code: Now draws UPCA and EAN
|
||||
symbols properly and puts human readable text into the image. Also corrected
|
||||
some nasty 'never ending loop' bugs in Code 128 and check digit bugs in PostNet
|
||||
and Planet. 8/7/2008
|
||||
|
||||
v1.6.2 - Added KIX Code support and PNG image rotation. Corrected a bug
|
||||
affecting extended ASCII support in Code 128 and Code 16k. 28/7/2008.
|
||||
|
||||
v2.0 beta - Added support for Aztec Code, Codablock-F, Code 32, EAN-14 and DAFT
|
||||
Code. Rearranged symbology numbers to match Tbarcode v8. Corrected a never
|
||||
ending loop bug in EAN-128. 29/9/2008
|
||||
|
||||
v2.0 beta r2 - Many corrections and bugfixes. (Code 11, Code 128, EAN-128,
|
||||
Aztec Code, Codablock-F, Code 16k, POSTNET, PLANET, NVE-18, PZN, Data Matrix
|
||||
ECC200, Maxicode and QR Code)
|
||||
|
||||
v2.0 - Made corrections to Aztec Code and tested output with bcTester. Added
|
||||
Aztec Runes, Micro QR Code and Data Matrix ECC200 ECC 000-140. Updated e-mail
|
||||
information. 18/11/2008
|
||||
|
||||
v2.1 - Reinstated Korea Post barcodes, harmonised bind and box options, moved
|
||||
Unicode handling into backend and added input_mode option, added size options
|
||||
to Data Matrix ECC200, added NULL character handling for Codablock-F, Code 128,
|
||||
Code 16k, Extended Code 39, Code 93, Telepen, Maxicode, Data Matrix ECC200 ECC
|
||||
200, PDF417 and MicroPDF417. Added GS1 support for Code 16k, Codablock-F and
|
||||
Aztec Code. Added scale and direct to stdout options. Rebult Data Matrix ECC200
|
||||
ECC 200 encoding algorithms to support NULL encoding and GS1 data encoding.
|
||||
31/1/2009
|
||||
|
||||
v2.1.1 - Minor Data Matrix ECC200 bugfix and added HIBC options. 10/2/2009
|
||||
|
||||
v2.1.2 - Added SVG output option. Improved Japanese character support including
|
||||
Unicode > Shift-JIS capability. Bugfixes for Data Matrix ECC200 (missing
|
||||
characters at end of string) and Codablock-F (K1/K2 check digit and row
|
||||
indicators above row 6). 1/3/2009
|
||||
|
||||
v2.1.3 - Many improvements to the QZint GUI which is now renamed "Zint Barcode
|
||||
Studio 0.2". Added Japanese Postal Barcode, Code 49 and Channel Code and made
|
||||
corrections to Data Matrix ECC200 (Binary mode data compression terminates too
|
||||
soon), Aztec Code (Bug when automatically resizing after removing "all 0" and
|
||||
"all 1" codewords) and Code 128 (Extended ASCII characters become corrupt).
|
||||
19/5/2009
|
||||
|
||||
v2.1.4 - Many stability improvements including removal of buffer overruns in
|
||||
Code 39, LOGMARS, PZN, Aztec Code and Composite CC-A. Addition of files for
|
||||
compiling on MS Windows platform - tested successfully on XP and Vista.
|
||||
19/6/2009
|
||||
|
||||
v2.2 - Added Code One and GS1 support in Code 49. Changed GUI binary name to
|
||||
zint-qt and brought GUI up to version 1.0. Made some minor bugfixes to Code 39,
|
||||
ITF-14, Aztec Code, Code 128 and Code 16K. Added 'rest' button to GUI. Included
|
||||
.spec file from Radist. 18/7/2009
|
||||
|
||||
v2.2.1 - Data encoding bugfixes for Aztec Code, Data Matrix ECC200, USPS One
|
||||
Code and PDF417. Symbol plotting bugfixes for MicroPDF417 and 2D components of
|
||||
composite symbols. Text formatting bugfix for Qt renderer and a couple of
|
||||
compiler fixes for MSVC PNG image output. 6/8/2009
|
||||
|
||||
v2.2.2 - A beta release previewing the new API structure. Better NULL character
|
||||
support with "nullchar" value removed. Added loading from file and sequence
|
||||
dialogs in Barcode Studio. 29/9/2009
|
||||
|
||||
v2.3 - Fixed problems with Micro QR Code and rebuilt QR Code support removing
|
||||
dependence on libqrencode. Improved Kanji character support for QR Code and
|
||||
Micro QR Code which now auto-detects and automatically converts to Shift-JIS.
|
||||
Added Grid Matrix symbology with Kanji character support and automatic
|
||||
conversion to GB 2312. Removed no_qr compile option. Advanced Barcode Studio
|
||||
version number to match library version number. 23/11/2009
|
||||
|
||||
v2.3.1 - Removed Codablock-F. Redesigned scale function so that human readable
|
||||
text and Maxicode symbols can be scaled consistently. Corrected encoding bugs
|
||||
with Code 128/Code 16k and Data Matrix ECC200 ECC 050. Added --notext option to
|
||||
CLI. 7/3/2010
|
||||
|
||||
v2.3.2 - Corrected many bugs in GS1 DataBar Extended thanks to the careful
|
||||
study of the code by Pablo Orduña at the PIRAmIDE project. Similarly corrected
|
||||
some bugs in Maxicode thanks to Monica Swanson at Source Technologies. Also
|
||||
minor bugfixes for ISBN and Aztec Code, and added some small features like a
|
||||
--square option in the CLI. 29/5/2010
|
||||
|
||||
v2.4 - Built extensions to the API for integrating with glabels with thanks to
|
||||
Sam Lown and Jim Evins. Added code optimisation and input from stdin thanks to
|
||||
Ismael Luceno. Reinstated escape character input. Simplification of Barcode
|
||||
Studio. 13/9/2010
|
||||
|
||||
v2.4.1 & 2.4.2 – A whole host of bugfixes including correction of ECC routines
|
||||
for Code-1 and addition of batch processing at the command line. 19/4/2011 &
|
||||
4/5/2011
|
||||
|
||||
v2.4.3 - Includes minor bugfixes 16/5/2011
|
||||
|
||||
v2.5 – Support for DotCode and Han Xin code. Restore support for Codablock-F.
|
||||
ECI code processing. Output to BMP, GIF and PCX. Added bold text option. Many
|
||||
minor bugfixes and improvements.
|
||||
13/11/2016
|
||||
|
||||
v2.6 - Output to EMF and TIF. Update frontend to Qt5. Copy to clipboard on
|
||||
KDE and Windows.
|
||||
12/5/2017
|
||||
|
||||
v2.6.1 - Various bugfixes to backend, including improved Aztec code processing.
|
||||
Many improvements to GUI including resizeable screens and more output while
|
||||
batch processing, more consistent use of dialogues.
|
||||
27/8/2017
|
||||
|
||||
v2.6.2 - Further bugfixes in Aztec and DotCode. Expand escape sequence support
|
||||
to API and GUI. Handle UTF BOM. Bugfix raster images of Maxicode.
|
||||
22/10/2017
|
||||
|
||||
v2.6.3 - New symbology Royal Mail 4-state Mailmark. Added North America VIN
|
||||
verification. Bugfixes for TIF and EMF output and escape character handling.
|
||||
15/02/2018
|
||||
|
||||
v2.6.4 - Datamatrix DMRE updated to the ISO/IEC29158 version. This is
|
||||
incompatible in the way, that the old -vers numbers for DMRE are re-assigned.
|
||||
The separator of GS1-datamatrix may be switched from FNC1 to GS.
|
||||
GS1 field length check AI 8009 and 7230 to 7239 corrected.
|
||||
|
||||
v2.6.5 - minor bugfixes
|
||||
|
||||
v2.6.6 - minor Bugfixes
|
||||
|
||||
v2.6.7 - Allow to code ECI 3 if explicitly given for debug purposes.
|
||||
|
||||
v2.7.0 - new features:
|
||||
- Automatic height option added to qzint
|
||||
- DotCode in line with new specification
|
||||
- New GS1 AIs 7240, 235, 417, 7040, 8026, updated checks for 7007, 8008
|
||||
- New Symbology rMQR
|
||||
- QR and Gridmatrix optimisation for GB2312
|
||||
- removed deprecated interface for gLabels program. Please use current
|
||||
interface.
|
||||
|
||||
v2.8.0
|
||||
- Add Ultracode implementation
|
||||
- Disable full multi byte compression for QR family, Han Xin and Gridmatrix by
|
||||
default. It may be enabled by a new option.
|
||||
This has been moved to "ChangeLog" in the project root directory.
|
||||
|
||||
7.4 Sources of Information
|
||||
--------------------------
|
||||
|
@ -131,7 +131,7 @@ Recent versions of Qt no longer supply a specific component for Visual Studio
|
||||
2015, but you can use "MSVC 2017 32-bit" instead as it's compatible.
|
||||
|
||||
For information on building a standalone version of Zint Studio using Visual
|
||||
Studio 2015, see "frontend_qt/howto_build_qzint_using_msvs2015.txt"
|
||||
Studio 2015, see "frontend_qt\howto_build_qzint_using_msvs2015.txt"
|
||||
|
||||
|
||||
CMake and Visual Studio
|
||||
|
Loading…
Reference in New Issue
Block a user