Commit graph

197 commits

Author SHA1 Message Date
gitlost
72eac41c34 Add compliant height, using ZINT_COMPLIANT_HEIGHT flag for back-compatibility
Rename barcode funcs to same as BARCODE_XXX name
library: barcode funcs array for dispatch, used for ZBarcode_ValidID() also
general: change is_sane() comparison to nonzero from ZINT_ERROR_INVALID_OPTION
MAILMARK: fuller error messages
CODABAR: add option to show check character in HRT
zint.h: use 0xNNNN for OR-able defines
GUI: add guard descent height reset button, add Zint version to window title,
  static get_zint_version() method, use QStringLiteral (QSL shorthand),
  use SIGNAL(toggled()), add errtxt "popup" and status bar, add icons,
  add saveAs shortcut, add main menu, context menus and actions, add help,
  reset_view() -> reset_colours(), add copy to clipboard as EMF/GIF/PNG/TIF,
  lessen triggering of update_preview(), shorten names of getters/setters,
  simplify/shorten some update_preview() logic in switch,
  CODEONE disable structapp for Version S
qzint.cpp: add on_errored signal, add missing getters, add test
2021-10-09 00:13:39 +01:00
gitlost
c0791ad85e Add Structured Append support for AZTEC, CODEONE, DATAMATRIX, DOTCODE,
GRIDMATRIX, MAXICODE, MICROPDF417, PDF417, QRCODE, ULTRA
DOTCODE: use pre-calculated generator poly coeffs in Reed-Solomon for
  performance improvement
PDF417/MICROPDF417: use common routine pdf417_initial()
GUI: code lines <= 118, shorthand widget_obj(),
  shorten calling upcean_addon_gap(), upcean_guard_descent()
various backend: var name debug -> debug_print
2021-09-28 21:42:44 +01:00
gitlost
4284f3c578 Add output_options BARCODE_QUIET_ZONES and BARCODE_NO_QUIET_ZONES 2021-09-24 13:21:24 +01:00
gitlost
4009c86c5f UPC/EAN: Add guard_bar descent (guard_descent)
zint.h: Adjust field order to improve alignments; encoded_data 143 -> 144
2021-09-22 00:04:15 +01:00
gitlost
9bae0b86f9 - raster.c: Need ceilf(symbol->height * si) to avoid heap-buffer-overflow;
also avoid distributive multiplication with floats to lessen chances of
  platform variation (#204 ARM-Cortex crash)
- raster.c: Don't allow for text if scale < 1.0
- raster.c: Cast some indexes to (size_t) to allow for large scale
- vector.c: Check malloc()s and return ZINT_ERROR_MEMORY on fail
- raster/vector.c: various var name changes & other code fiddling
- library.c: Check that scale/height/whitespace/border are reasonable values:
  scale (0.01-100), height (0-500), whitespace_width/height (0-100),
  border_width (0-100)
- CLI: allow both e.g. '-height' and '--height' (getopt_long_only())
- gif.c: fix GIF_ZLW_PAGE_SIZE -> GIF_LZW_PAGE_SIZE
- GUI: allow whitespace/scale to 100
2021-09-20 14:56:27 +01:00
gitlost
67b2a9c99d RMQR: add ECI support; GUI/CLI: fix dev version test 2021-08-20 16:50:39 +01:00
gitlost
2e84fd5157 Replace WARN_ZPL_COMPAT with GS1NOCHECK_MODE 2021-07-13 17:39:03 +01:00
gitlost
3c1869b032 library: compat symbology 39 fix; ISBN: "X" check
WARN_FAIL_ALL: always return error: ZINT_ERROR_USES_ECI/NON_COMPLIANT
Fuller error messages; more comments zint.h
mainwindow.cpp: replace metaobject ENUM with array
  (suppresses virtual in constructor warning)
2021-07-06 19:53:31 +01:00
gitlost
a312cd8e8e raster/output: use new isfintf() to test floats integral (CodeQL) 2021-06-30 11:57:21 +01:00
gitlost
52c00e59ba C25/DBAR: use new func gs1_check_digit() for common GS1 check digit calc
CODE11/CODE39/EXCODE39/CODE93/PZN/CHANNEL/VIN/DBAR/UPCEAN: fuller error messages
DATAMATRIX: look_ahead_test debug counts
DBAR: consolidate option_2 cols_per_row
CMakeLists.txt: restore -fno-var-tracking-assignments for gcc no DEBUG
overall: suppress various warnings on various configs
testcommon.c: clean-up
2021-06-27 11:47:55 +01:00
gitlost
c693482aa1 Change height and row_height array to floats; DAFT tracker ratio 2021-06-19 13:11:23 +01:00
gitlost
8ff15d805a CODABAR: fix [69c1b4] errtxt; CLI: _WIN32, fuller error messages; win32/README: Administrat-or 2021-06-12 16:01:16 +01:00
gitlost
4a8cac2a5a CODEONE/DATAMATRIX/MAILMARK/PLESSEY: fix some 32-bit/portability bugs
PLESSEY: add options NCR weighted mod-10, hide check digit(s) in HRT
test suite: now runnable under MSVC 2019, 2017, 2015, MinGW/MSYS
win32/README: update with MSVC 2019 and CMake instructions
2021-06-10 11:15:39 +01:00
gitlost
9b63e2ae22 DOTCODE: allow for max 200 cols in CLI, GUI, Tcl; more detailed size error messages 2021-05-28 15:05:06 +01:00
gitlost
00e8cb0904 Add whitespace_height to zint_symbol (vertical whitespace) 2021-05-25 20:42:26 +01:00
gitlost
29d761c795 MAXICODE: Rejig raster output to more closely match ISO 16023:2000 2021-05-16 16:34:42 +01:00
gitlost
79d3c1dc7a Add GS1PARENS_MODE (input_mode) to allow inputting GS1 AIs in parentheses 2021-05-15 12:23:46 +01:00
gitlost
7f74414666 eci.c: fix bad bug in Korean, return EUC-KR instead of raw KS X 1001 2021-03-20 14:36:21 +00:00
gitlost
5d4fe0b572 CLI: validate_int: just fail if length > 9 2021-02-06 00:18:00 +00:00
gitlost
6274140c73 CODEONE: various fixes, ECI support; #209 2021-02-05 23:55:24 +00:00
gitlost
f6bed3acb2 DOTCODE: Fix best_mask -> high_score prime test; manual mask 2021-01-22 18:07:59 +00:00
gitlost
fb12fe4e79 CLI: Prefix GS1 to DataBar names 2021-01-20 21:56:54 +00:00
gitlost
484bd6e19a CLI: Handle UTF-8 args on Windows; -b <barcode name> 2021-01-20 21:15:03 +00:00
gitlost
0b80592f87 escape_char_process: "\xNN" simple convert (reverts [dddf29]), "\uNNNN" BMP check 2021-01-15 14:22:32 +00:00
gitlost
e1e0aa7ac4 eci: All ECIs: update CLI main.c and tcl zint.c 2021-01-12 14:11:53 +00:00
gitlost
f62a678d0f #209 suppress CodeQL warnings except CODEONE; simplifications AZTEC_RUNE, MICROPDF417 2020-12-23 10:57:24 +00:00
gitlost
bee5f08f50 #209 rss.c, composite.c; DBAR_EXP encodation methods; symbol NO_PNG out.gif 2020-12-21 19:30:07 +00:00
gitlost
2b85585e69 MAXICODE: scmvv option #212; postcode needn't be space-filled 2020-12-19 17:13:35 +00:00
gitlost
f09826b9a4 ZBarcode_Encode_File: suppress gcc -fanalyzer warning, props Andre Maute; ZINT_MAX_FILE_LEN 2020-12-18 02:36:48 +00:00
gitlost
cd214addba HANXIN: 0xFFE terminator; reedsol/AZTEC: stack-based; AZTEC/HANXIN/QR/GRIDMATRIX speedups; #209 2020-11-27 12:54:44 +00:00
Robin Stuart
3eb31fe3f8 Take version information from CmakeLists.txt
Warning: potential incompatibility because version number is no longer stored in zint.h
2020-11-22 11:29:45 +00:00
gitlost
e37a82a8f1 Tabs/typo in zint.h; PostNet -> POSTNET; ui: shortcuts, tooltips; tests inkscape -> libreoffice 2020-10-03 22:51:08 +01:00
gitlost
36c19053d7 vector.c: string halign; POSTNET/PLANET: 1 module space; ZBarcode_Cap(); GUI settings 2020-09-30 12:19:12 +01:00
gitlost
ac7b5dd282 #206 build: version to 2.9.1.9; ZINT_VERSION_BUILD (9 dev); tools/update_version.php 2020-09-04 16:38:11 +01:00
Robin Stuart
9f5ae4cbb2 First stage at creating ZPL compatability mode
Partly resolves #142 and relates to discussion in #197
2020-08-22 11:09:57 +01:00
gitlost
6579efd271 raster: #197 optimize scaling for half-int vals, scale >= 0.5 only 2020-08-10 19:40:10 +01:00
gitlost
980e039743 command line: avoid arg_opts buffer overflow if -d/i used without space before arg 2020-08-05 15:58:21 +01:00
gitlost
736bc76f66 command line: allow data/input args anywhere on line; frontend tests 2020-08-04 22:22:26 +01:00
Robin Stuart
13f4a3547d New symbology: DPD Code (variation of Code 128) 2020-08-03 12:13:05 +01:00
Robin Stuart
47cac63e7f Add alpha channel support and --nobackground option
Alpha channel for PNG and SVG and option to remove background from EMF
2020-08-02 22:26:39 +01:00
gitlost
74ad80976e PDF417TRUNC: stop pattern; PDF417: no default mode codeword 900 if 1st 2020-07-17 16:39:01 +01:00
gitlost
2a19b883a5 UPC/EAN, ITF14: quiet zones, addongap; raster/vector: sync code, use double 2020-07-15 19:00:12 +01:00
gitlost
c1fb51ba42 rss.c: some fixes for separators, allow check digit, refactoring; bwipp_dump.ps 2020-07-10 19:39:32 +01:00
gitlost
9768cd004a main.c: do validator() before atoi()s if not already; primary strlen max 90 -> 127 2020-06-23 23:35:33 +01:00
gitlost
d0e2c5928a #197 Allow --secure=0 in main.c; manual --mode -> --secure AZTEC/HANXIN 2020-06-23 22:06:18 +01:00
gitlost
6242e02638 CODEONE/ULTRA overrun fixes; TELEPEN fixes; CODEONE/LOGMARS/VIN/CODABAR options; GUI updates; tests 2020-06-04 18:45:25 +01:00
gitlost
7be63a00b6 CODE16K fixes; separator default 1; raster/vector.c quiet_zones, output.c; #191 2020-05-21 18:22:28 +01:00
Harald Oehlmann
9f56a1c35e - Added changes in README
- Migrated changes in main.c to tcl backend
- TCL Demo did not honor the specified options
- Added "static" to function "is_stackable" in frontend/main.c. This is an interrim solution, see E-Mail.
2020-05-19 12:02:18 +02:00
gitlost
8dcd09406c CODABLOCKF and CODE128 fixes; row separator height option_3; #191 2020-05-16 10:22:33 +01:00
Robin Stuart
0d26948baa Merge branch Ultra 2020-04-06 17:05:22 +01:00
gitlost
61cd413fe4 Full multibyte option_3 for QR, HANXIN, GRIDMATRIX 2020-04-02 14:41:13 +01:00
Robin Stuart
b572bb513d Ultra: Disable code compression by default
Ensures symbols are valid until better version of specification is available
2020-03-29 22:23:07 +01:00
Robin Stuart
ad28de1819 Initial implementation of rMQR
According to draft dated June 2018
2019-11-25 19:08:25 +00:00
Harald Oehlmann
ed00537283 2019-09-01 HaO restored main.c which was unintentiously deleted in git 2019-09-02 11:05:43 +02:00
gitlost
251a7d99c4 New files 2019-09-01 21:09:47 +01:00
Harald Oehlmann
efa4a8f435 2018-08-30 HaO Maxicode "input to long" error. Backport from okapi by Remi. Ticket #148 2019-08-30 16:40:44 +02:00
Harald Oehlmann
cb3eea2ba0 2018-08-30 HaO Implemented GS separator for Datamatrix (--gssep option). Ticket #139 2019-08-30 16:14:17 +02:00
Robin Stuart
dddf2934fc Allow escape character processing
Fixes #101 reported by Martin Zizka
Converts \xNN characters > 0x7c to UTF-8 if appropriate
Removes some redundant legacy code
2018-04-22 14:25:39 +01:00
Robin Stuart
e6618f1a1b Allow escape character processing in batch mode
Suggested by Martin Zizka, Fixes #96
2018-03-30 11:40:44 +01:00
Robin Stuart
ffd1ed2d6b Update version number to 2.6.3 2018-02-15 10:46:02 +00:00
Robin Stuart
78d85bd72e Add font size option for SVG and EPS 2018-02-11 09:55:28 +00:00
Robin Stuart
389bcce10f Add Royal Mail Mailmark to front end 2018-02-09 20:55:17 +00:00
Robin Stuart
e737f992b5 Add verification for North America VIN (Vehicle Identification Number) 2018-02-03 18:44:01 +00:00
Robin Stuart
d2161ffb20 Make CLI errors more consistent
Should now output errors and warnings in a consistent and predictable fashion. This is not a neat solution, but functional for now.
2018-01-21 14:33:54 +00:00
Robin Stuart
45e584ba28 Fix filetype recognition bug in frontend
Fixes #84 submitted by Michael Lee
2017-12-11 17:52:22 +00:00
Robin Stuart
ddce98a1bb Correct processing of escape char mode 2017-11-05 14:27:01 +00:00
Boris Zentner
31cc0ae78a Remove spaces before EOL 2017-10-25 17:23:57 +01:00
Robin Stuart
0314ca65a8 Move escape character processing into library
And expand to include all 8-bit values.
2017-10-21 12:45:50 +01:00
John Mortlock
bf73227f31 Allow rotation in batch processing mode 2017-10-09 20:35:10 +10:30
Rodrigo Torres
4963a772db Refactor 2017-09-11 19:21:33 +01:00
Robin Stuart
608b4b9134 Audit of error codes 2017-07-27 16:01:53 +01:00
Robin Stuart
24f175b6f6 Flag if DM_SQUARE is used at the same time as symbol size selection 2017-07-26 11:16:54 +01:00
Robin Stuart
451f0150d8 Expand ECI support and enforce binary mode when ECI is set 2017-07-23 17:59:51 +01:00
Julien Nabet
3257a5c0af cppcheck: fix reports
[backend/bmp.c:133]: (error) Memory leak: bitmap
[backend/bmp.c:126]: (error) Memory leak: bitmap
[backend/composite.c:464]: (error) Array index -1 is out of bounds.
[backend/composite.c:507]: (error) Array index -1 is out of bounds.
[backend/dmatrix.c:962]: (style) Redundant condition: i!=0. 'i==0 || (i!=0 && binary[i-1]!='b')' is equivalent to 'i==0 || binary[i-1]!='b''
[backend/raster.c:122]: (error) Memory leak: rotated_pixbuf
[backend/raster.c:506]: (error) Memory leak: pixelbuf
[frontend/main.c:273]: (error) Uninitialized variable: format_string
[frontend_qt/exportwindow.cpp:103]: (style) Array index 'j' is used before limits check.
2017-07-01 09:49:47 +01:00
Robin Stuart
b3a1b24d18 help the compiler create more efficient code
Patch from Michael <virtual_worlds@gmx.de>
Full text: As usual I have modified only minor things to remove warnigs when compiled as C++ code, have added some const-specifiers where possible to help the compiler create more efficient code and added some static-specifiers to make functions invisible to other modules.
2017-05-29 10:43:47 +01:00
Robin Stuart
b426877a4f Add new symbology UPNQR 2017-05-20 23:37:50 +01:00
Robin Stuart
6f4610aa98 Add verbose mode to output debug info without recompiling 2017-04-11 10:05:38 +01:00
Robin Stuart
b199bc8ee6 CLI should not ignore --eci flag
Bug found thanks to Marjan Leden
2017-04-10 22:14:35 +01:00
Robin Stuart
e7858dfe98 Add version information to zint.h and increment release version
Relates to #51
2016-12-10 09:04:06 +00:00
Robin Stuart
1bd7783968 Bugfix: Correctly handle --filetype input 2016-10-30 19:22:50 +00:00
Robin Stuart
3fad793aeb Replace missing \n 2016-10-30 18:54:26 +00:00
Robin Stuart
4561a66067 Add identifiers to error messages
To ease the debug process
2016-10-28 22:40:40 +01:00
Robin Stuart
d875318b3d Add option to include check digit in UPC/EAN data, and validate before encoding
Fixes #5
2016-10-28 19:43:08 +01:00
Robin Stuart
eecad5e43f Allow minimum number of columns 2016-10-27 09:47:04 +01:00
Robin Stuart
6003b14083 Simplify CLI for batch processing 2016-10-17 21:10:13 +01:00
Robin Stuart
9eff5cc63a Allow adjustment of dot size when in dotty mode 2016-09-18 14:09:58 +01:00
Robin Stuart
0dd072437e Add Codablock options to Studio
Also remove divide by zero bug calculating row height
2016-09-17 11:39:01 +01:00
Harald Oehlmann
e6ff154543 Codablock F C128 Codeword generation implemented 2016-08-31 16:29:21 +02:00
Robin Stuart
c11afb644e Add HIBC Codablock option to frontend 2016-08-26 12:34:14 +01:00
Robin Stuart
4e13b0e95d Add framework for Codablock 2016-08-24 19:37:49 +01:00
Robin Stuart
9d1c20201d Add ECI encoding 2016-08-16 12:43:41 +01:00
Robin Stuart
340bcd2833 DotCode: New symbology added and encoding to codewords as set out in Annex F
Does not produce DotCode symbols yet
2016-07-25 22:52:29 +01:00
Robin Stuart
e39d2ff915 Add dot mode (experimental)
First step towards solution for ticket #29
2016-07-12 15:00:25 +01:00
Robin Stuart
9011a96134 Add option to use data for determining filenames in batch mode
As requested by William Buckingham in #23
2016-07-12 12:00:57 +01:00
Robin Stuart
507071cf9c Add CMYK colourspace option for EPS
Requested by Joe Bedard
Ref #22
2016-06-19 14:14:30 +01:00
Robin Stuart
e0240c8e2e Add bold text option for PNG
Fixes #26
Code patch by Christoph Scharenberg
2016-06-19 12:32:49 +01:00
Robin Stuart
0230426b0f Add new symbology: Han Xin Code 2016-04-07 17:13:43 +01:00
Harald Oehlmann
372994d794 Add Data Matrix Rectangular Extension (DMRE) in regular distribution
- add define "DM_DMRE	101" to zint.h as option_3 value
- add option "-dmre" to command line
- add ckeckbutton "Activate DMRE in automatic mode" to qzint
- make dmatrix.c/dmatrix.h aware of option_3 value DM_DMRE and include DMRE in automatic mode
- Use version 2.5 everywere (as already started by Robin)
- common test case for DMRE in automatic mode is numeric input data with 48 digits, which should lead to a symbol of size 8x64
2016-02-27 21:26:52 +01:00
Robin Stuart
858c6264b1 Code format and audit, part 4
Update copyright info, remove unused code, etc.
2016-02-20 12:37:50 +00:00
Robin Stuart
ae335b104a Alter 'dump' option to give hexadecimal output 2016-02-18 23:23:31 +00:00