diff --git a/CMakeLists.txt b/CMakeLists.txt index d4e5d98b..4b674e27 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -25,6 +25,7 @@ option(ZINT_COVERAGE "Set code coverage flags" OFF) option(ZINT_STATIC "Build static library" OFF) option(ZINT_USE_PNG "Build with PNG support" ON) option(ZINT_USE_QT "Build with Qt support" ON) +option(ZINT_QT6 "If ZINT_USE_QT, use Qt6" OFF) include(SetPaths.cmake) @@ -137,7 +138,7 @@ add_subdirectory(frontend) if(NOT ZINT_USE_QT) message(STATUS "Qt support was disabled for this build") -elseif($ENV{CMAKE_PREFIX_PATH} MATCHES "6[.][0-9][.][0-9]") +elseif(ZINT_QT6 OR ($ENV{CMAKE_PREFIX_PATH} MATCHES "6[.][0-9][.][0-9]")) set(USE_QT6 TRUE) message(STATUS "Using Qt6") cmake_policy(SET CMP0012 NEW) # Recognize constants in if() diff --git a/ChangeLog b/ChangeLog index 57eb455b..3021d3ac 100644 --- a/ChangeLog +++ b/ChangeLog @@ -17,6 +17,9 @@ Changes - GUI: make acceptable for macOS; add iconset for macOS, install - manual: update macOS Homebrew install info; add README.macos - GUI: export window: add no. of sequences to results label +- frontend: batch: for @ use + instead of * on Windows as * not allowed + in filenames +- Add symbology BC412 (beta) Bugs ---- @@ -27,6 +30,8 @@ Bugs - library: check symbol->primary for escape sequences also - GUI: error message GS1_MODE -> GS1 mode - GUI: sequence window: fix initial clear button status +- GUI: NO_PNG: allow for Qt not parsing #if's in slots +- frontend: batch mode: fix default "~~~~~" output (github issue #65) Version 2.11.0 (2022-05-24) diff --git a/README.linux b/README.linux index 90f27127..e38ab7f7 100644 --- a/README.linux +++ b/README.linux @@ -116,6 +116,7 @@ ZINT_STATIC:BOOL=OFF # Build static library ZINT_TEST:BOOL=OFF # Set test compile flag ZINT_USE_PNG:BOOL=ON # Build with PNG support ZINT_USE_QT:BOOL=ON # Build with Qt support +ZINT_QT6:BOOL=OFF # If ZINT_USE_QT, use Qt6 which can be set by doing e.g. diff --git a/README.windows b/README.windows new file mode 100644 index 00000000..f481356c --- /dev/null +++ b/README.windows @@ -0,0 +1 @@ +See "README" in the "win32" sub-directory. diff --git a/backend/tests/tools/bwipp_dump-barcode.ps.diff b/backend/tests/tools/bwipp_dump-barcode.ps.diff index e84ab1d0..082e074f 100644 --- a/backend/tests/tools/bwipp_dump-barcode.ps.diff +++ b/backend/tests/tools/bwipp_dump-barcode.ps.diff @@ -1,6 +1,6 @@ ---- /home/mburke/code/bwipp/postscriptbarcode/build/monolithic/barcode.ps 2022-07-03 21:45:03.217966554 +0100 -+++ backend/tests/tools/bwipp_dump.ps 2022-07-03 21:50:45.106786827 +0100 -@@ -15224,8 +15224,8 @@ +--- /home/mburke/code/bwipp/postscriptbarcode/build/monolithic/barcode.ps 2022-07-08 18:34:14.221029287 +0100 ++++ backend/tests/tools/bwipp_dump.ps 2022-07-08 18:29:43.830028306 +0100 +@@ -15706,8 +15706,8 @@ } bind /fime { /sbs [2.25 6.75 2.25 15.75 2.25 6.75 2.25] def @@ -11,7 +11,7 @@ } bind >> def -@@ -26518,34 +26518,80 @@ +@@ -27194,34 +27194,80 @@ pop } ifelse @@ -111,7 +111,7 @@ end -@@ -26604,7 +26650,7 @@ +@@ -27281,7 +27327,7 @@ pop } ifelse @@ -120,7 +120,7 @@ % Get the result of encoding with ean8 and gs1-cc options (lintype) (ean8) put -@@ -26612,29 +26658,75 @@ +@@ -27289,29 +27335,75 @@ options (dontdraw) true put % Plot the linear part @@ -216,7 +216,7 @@ end -@@ -26693,34 +26785,80 @@ +@@ -27371,34 +27463,80 @@ pop } ifelse @@ -316,7 +316,7 @@ end -@@ -26794,34 +26932,80 @@ +@@ -27473,34 +27611,80 @@ /opt options >> def @@ -416,7 +416,7 @@ end -@@ -26880,7 +27064,7 @@ +@@ -27560,7 +27744,7 @@ pop } ifelse @@ -425,7 +425,7 @@ options (lintype) (databaromni) put options (linkage) true put -@@ -26891,7 +27075,7 @@ +@@ -27571,7 +27755,7 @@ linear options //databaromni exec dup (sbs) get /linsbs exch def dup (bhs) get 0 get 72 mul /linheight exch def @@ -434,7 +434,7 @@ % Plot the separator /sepfinder { -@@ -26922,20 +27106,66 @@ +@@ -27602,20 +27786,66 @@ sep 0 [0 0 0] putinterval sep sep length 4 sub [0 0 0 0] putinterval 18 sepfinder 64 sepfinder @@ -513,7 +513,7 @@ end -@@ -26993,7 +27223,7 @@ +@@ -27674,7 +27904,7 @@ pop } ifelse @@ -522,7 +522,7 @@ options (lintype) (databarstacked) put options (linkage) true put -@@ -27004,7 +27234,7 @@ +@@ -27685,7 +27915,7 @@ linear options //databarstacked exec dup (pixs) get 0 2 index (pixx) get getinterval /bot exch def dup (pixy) get /linheight exch def @@ -531,7 +531,7 @@ % Plot the separator /sepfinder { -@@ -27032,20 +27262,52 @@ +@@ -27713,20 +27943,52 @@ sep 0 [ 0 0 0 0 ] putinterval sep sep length 4 sub [ 0 0 0 0 ] putinterval 18 sepfinder @@ -596,7 +596,7 @@ end -@@ -27103,7 +27365,7 @@ +@@ -27785,7 +28047,7 @@ pop } ifelse @@ -605,7 +605,7 @@ options (lintype) (databarstackedomni) put options (linkage) true put -@@ -27114,7 +27376,7 @@ +@@ -27796,7 +28058,7 @@ linear options //databarstackedomni exec dup (pixs) get 0 2 index (pixx) get getinterval /bot exch def dup (pixy) get /linheight exch def @@ -614,7 +614,7 @@ % Plot the separator /sepfinder { -@@ -27142,20 +27404,52 @@ +@@ -27824,20 +28086,52 @@ sep 0 [ 0 0 0 0 ] putinterval sep sep length 4 sub [ 0 0 0 0 ] putinterval 18 sepfinder @@ -679,7 +679,7 @@ end -@@ -27328,7 +27622,7 @@ +@@ -28012,7 +28306,7 @@ pop } ifelse @@ -688,7 +688,7 @@ options (lintype) (databarlimited) put options (linkage) true put -@@ -27339,7 +27633,7 @@ +@@ -28023,7 +28317,7 @@ linear options //databarlimited exec dup (sbs) get /linsbs exch def dup (bhs) get 0 get 72 mul /linheight exch def @@ -697,7 +697,7 @@ % Plot the separator mark -@@ -27347,22 +27641,68 @@ +@@ -28031,22 +28325,68 @@ counttomark 1 sub array astore /sep exch def pop pop sep 0 [0 0 0] putinterval sep sep length 9 sub [0 0 0 0 0 0 0 0 0] putinterval % 4 + 5 right guard spaces @@ -735,7 +735,8 @@ + /compsym comp options //gs1-cc exec def + /ccpixs compsym /pixs get def + /ccpixx compsym /pixx get def -+ + +- grestore + /linpixs [ 0 % Begin with left guard space + linsbs { cvi 1 index 0 eq {{1}} {{0}} ifelse repeat } forall % Alternates x 1/0's + ] def @@ -764,8 +765,7 @@ + ] def + /pixx ccpixx 1 add def + } ifelse - -- grestore ++ + /pixy pixs length pixx idiv def + << + /ren //renmatrix @@ -780,7 +780,7 @@ end -@@ -27421,7 +27761,7 @@ +@@ -28106,7 +28446,7 @@ pop } ifelse @@ -789,7 +789,7 @@ options (lintype) (databarexpanded) put options (linkage) true put -@@ -27432,7 +27772,7 @@ +@@ -28117,7 +28457,7 @@ linear options //databarexpanded exec dup (sbs) get /linsbs exch def dup (bhs) get 0 get 72 mul /linheight exch def @@ -798,7 +798,7 @@ % Plot the separator /sepfinder { -@@ -27461,20 +27801,60 @@ +@@ -28146,20 +28486,60 @@ 18 98 bot length 13 sub {} for 69 98 bot length 13 sub {} for ] {sepfinder} forall @@ -871,7 +871,7 @@ end -@@ -27532,7 +27912,7 @@ +@@ -28218,7 +28598,7 @@ pop } ifelse @@ -880,7 +880,7 @@ options (lintype) (databarexpandedstacked) put options (linkage) true put -@@ -27543,7 +27923,7 @@ +@@ -28229,7 +28609,7 @@ linear options //databarexpandedstacked exec dup (pixs) get 0 2 index (pixx) get getinterval /bot exch def dup (pixy) get /linheight exch def @@ -889,7 +889,7 @@ % Plot the separator /sepfinder { -@@ -27569,21 +27949,49 @@ +@@ -28255,21 +28635,49 @@ 19 98 bot length 13 sub {} for 70 98 bot length 13 sub {} for ] {sepfinder} forall @@ -952,7 +952,7 @@ end -@@ -27642,7 +28050,7 @@ +@@ -28329,7 +28737,7 @@ pop } ifelse @@ -961,7 +961,7 @@ options (inkspread) (0) put options (dontdraw) true put -@@ -27669,35 +28077,87 @@ +@@ -28356,35 +28764,87 @@ linear << options {} forall >> //gs1-128 exec dup (sbs) get /linsbs exch def dup (bhs) get 0 get 72 mul /linheight exch def @@ -1063,7 +1063,7 @@ end -@@ -29130,3 +29590,189 @@ +@@ -29934,3 +30394,189 @@ % --END ENCODER hibcazteccode-- % --END TEMPLATE-- diff --git a/backend/tests/tools/bwipp_dump.ps.tar.xz b/backend/tests/tools/bwipp_dump.ps.tar.xz index bd02d7f0..57845cef 100644 Binary files a/backend/tests/tools/bwipp_dump.ps.tar.xz and b/backend/tests/tools/bwipp_dump.ps.tar.xz differ diff --git a/backend/zint.h b/backend/zint.h index be58674b..6a3595a3 100644 --- a/backend/zint.h +++ b/backend/zint.h @@ -188,7 +188,7 @@ extern "C" { #define BARCODE_AUSROUTE 67 /* Australia Post Routing */ #define BARCODE_AUSREDIRECT 68 /* Australia Post Redirection */ #define BARCODE_ISBNX 69 /* ISBN */ -#define BARCODE_RM4SCC 70 /* Royal Mail 4 State */ +#define BARCODE_RM4SCC 70 /* Royal Mail 4-State Customer Code */ #define BARCODE_DATAMATRIX 71 /* Data Matrix (ECC200) */ #define BARCODE_EAN14 72 /* EAN-14 */ #define BARCODE_VIN 73 /* Vehicle Identification Number */ @@ -232,7 +232,7 @@ extern "C" { #define BARCODE_HANXIN 116 /* Han Xin (Chinese Sensible) Code */ /* Tbarcode 11 codes */ -#define BARCODE_MAILMARK 121 /* Royal Mail 4-state Mailmark */ +#define BARCODE_MAILMARK 121 /* Royal Mail 4-State Mailmark */ /* Zint specific */ #define BARCODE_AZRUNE 128 /* Aztec Runes */ diff --git a/docs/manual.pmd b/docs/manual.pmd index 72408fe0..ff9204ef 100644 --- a/docs/manual.pmd +++ b/docs/manual.pmd @@ -1,6 +1,6 @@ % Zint Barcode Generator and Zint Barcode Studio User Manual % Version 2.11.0.9 -% June 2022 +% July 2022 # 1. Introduction @@ -622,7 +622,7 @@ Value 69 `BARCODE_ISBNX` ISBN (EAN-13 with verification stage) - 70 `BARCODE_RM4SCC` Royal Mail 4-State (RM4SCC) + 70 `BARCODE_RM4SCC` Royal Mail 4-State Customer Code (RM4SCC) 71 `BARCODE_DATAMATRIX` Data Matrix (ECC200) @@ -686,7 +686,7 @@ Value 116 `BARCODE_HANXIN` Han Xin (Chinese Sensible) Code - 121 `BARCODE_MAILMARK` Royal Mail 4-state Mailmark + 121 `BARCODE_MAILMARK` Royal Mail 4-State Mailmark 128 `BARCODE_AZRUNE` Aztec Runes diff --git a/docs/manual.txt b/docs/manual.txt index 5a512551..ea52e49f 100644 --- a/docs/manual.txt +++ b/docs/manual.txt @@ -1,6 +1,6 @@ Zint Barcode Generator and Zint Barcode Studio User Manual Version 2.11.0.9 -June 2022 +July 2022 ******************************************************************************* * For reference the following is a text-only version of the Zint manual, * @@ -758,7 +758,7 @@ underscores are optional. 69 BARCODE_ISBNX ISBN (EAN-13 with verification stage) - 70 BARCODE_RM4SCC Royal Mail 4-State (RM4SCC) + 70 BARCODE_RM4SCC Royal Mail 4-State Customer Code (RM4SCC) 71 BARCODE_DATAMATRIX Data Matrix (ECC200) @@ -822,7 +822,7 @@ underscores are optional. 116 BARCODE_HANXIN Han Xin (Chinese Sensible) Code - 121 BARCODE_MAILMARK Royal Mail 4-state Mailmark + 121 BARCODE_MAILMARK Royal Mail 4-State Mailmark 128 BARCODE_AZRUNE Aztec Runes @@ -4361,7 +4361,7 @@ OPTIONS ~ Insert a number or 0 # Insert a number or space - @ Insert a number or * + @ Insert a number or * (+ on Windows) Any other Insert literally --primary=STRING diff --git a/docs/zint.1 b/docs/zint.1 index f2d86f1a..f9884e0d 100644 --- a/docs/zint.1 +++ b/docs/zint.1 @@ -306,7 +306,7 @@ to format the output filenames: \f[C] \[ti] Insert a number or 0 # Insert a number or space -\[at] Insert a number or * +\[at] Insert a number or * (+ on Windows) Any other Insert literally \f[R] .fi diff --git a/docs/zint.1.pmd b/docs/zint.1.pmd index bc12a79c..ba7977af 100644 --- a/docs/zint.1.pmd +++ b/docs/zint.1.pmd @@ -244,7 +244,7 @@ Paintbrush (`PCX`), Portable Network Format (`PNG`), Scalable Vector Graphic (`S ~ Insert a number or 0 # Insert a number or space - @ Insert a number or * + @ Insert a number or * (+ on Windows) Any other Insert literally `--primary=STRING` diff --git a/frontend/tests/test_args.c b/frontend/tests/test_args.c index c609dce4..73cec708 100644 --- a/frontend/tests/test_args.c +++ b/frontend/tests/test_args.c @@ -474,6 +474,7 @@ static void test_input(int index, int debug) { #else #define TEST_INPUT_AMPERSAND_EXPECTED "+++1.gif\000+++2.gif" #endif + struct item { int b; int batch;