mirror of
https://git.code.sf.net/p/zint/code
synced 2026-05-14 18:13:53 +00:00
DATAMATRIX: add new options DM_B256_START and DM_C40_START to
`options_3`, allowing forcing of Base 256 or C40 mode a la BWIPP for initial no. of characters specified in `option_1`, with 0 meaning all (CLI "--dmb256=" and "--dmc40=", GUI also (apart from MAILMARK_2D, which may be added later); export masks `DM_B256_C40_START_MASK` & `DM_SQUARE_DMRE_MASK` in "zint.h" ZBarcode_Encode_File: report filename (possibly truncated) in error message on failed open GUI: uniquify some accelerators and add some child widget getter helpers to "mainwindow.cpp" backend/DEVELOPER -> backend/README, with some expansion debian/copyright: a few more fixes BWIPP/pandoc: update to latest tests/fuzz: adjust for new DATAMATRIX options
This commit is contained in:
@@ -1380,8 +1380,16 @@ namespace Zint {
|
||||
}
|
||||
|
||||
if (m_symbol == BARCODE_DATAMATRIX || m_symbol == BARCODE_HIBC_DM) {
|
||||
if (option3() & DM_B256_C40_START_MASK) {
|
||||
arg_int(cmd, option3() & DM_B256_START ? "--dmb256=" : "--dmc40=", option1(), true /*allowZero*/);
|
||||
}
|
||||
arg_bool(cmd, "--dmiso144", (option3() & DM_ISO_144) == DM_ISO_144);
|
||||
arg_bool(cmd, "--dmre", (option3() & 0x7F) == DM_DMRE);
|
||||
arg_bool(cmd, "--dmre", (option3() & DM_SQUARE_DMRE_MASK) == DM_DMRE);
|
||||
} else if (m_symbol == BARCODE_MAILMARK_2D) {
|
||||
/* Accessing C40_START for MAILMARK_2D not currently in GUI but may be added later */
|
||||
if ((option3() & DM_B256_C40_START_MASK) == DM_C40_START) {
|
||||
arg_int(cmd, "--dmc40=", option1(), true /*allowZero*/);
|
||||
}
|
||||
}
|
||||
|
||||
if ((m_symbol == BARCODE_DOTCODE || (isDotty() && dotty())) && dotSize() != 0.8f) {
|
||||
@@ -1494,7 +1502,7 @@ namespace Zint {
|
||||
arg_bool(cmd, "--small", !notext && (fontSetting() & SMALL_TEXT));
|
||||
|
||||
if (m_symbol == BARCODE_DATAMATRIX || m_symbol == BARCODE_HIBC_DM) {
|
||||
arg_bool(cmd, "--square", (option3() & 0x7F) == DM_SQUARE);
|
||||
arg_bool(cmd, "--square", (option3() & DM_SQUARE_DMRE_MASK) == DM_SQUARE);
|
||||
}
|
||||
|
||||
if (supportsStructApp()) {
|
||||
|
||||
@@ -1010,7 +1010,7 @@ private slots:
|
||||
QTest::newRow("BARCODE_DATAMATRIX (GS1Raw + GS1SyntaxEngine)") << true << 0.0f << ""
|
||||
<< BARCODE_DATAMATRIX << (GS1_MODE | ESCAPE_MODE) // symbology-inputMode
|
||||
<< "010952012345678810BATCH4\\G2107" << "" // text-primary
|
||||
<< 0.0f << -1 << 0 << DM_SQUARE << 1.0f // height-scale
|
||||
<< 0.0f << 2 << 0 << (DM_B256_START | DM_SQUARE) << 1.0f // height-scale
|
||||
<< 0.0f << false << 0.7f << 1.0f // dpmm-textGap
|
||||
<< 5.0f << 0 << 0 << "" // guardDescent-structAppID
|
||||
<< "" << "" << QColor(Qt::black) << QColor(Qt::white) << false // fgStr-cmyk
|
||||
@@ -1019,14 +1019,14 @@ private slots:
|
||||
<< 0 << false << false << true << true // eci-gs1SyntaxEngine
|
||||
<< false << false << false << WARN_DEFAULT << false // readerInit-debug
|
||||
<< 0.0 << 0 << 0 << 0 << 0 << 0 // xdimdp
|
||||
<< "zint -b 71 -d '010952012345678810BATCH4\\G2107' --esc --gs1raw --gs1strict --gssep --square"
|
||||
<< "zint.exe -b 71 -d \"010952012345678810BATCH4\\G2107\" --esc --gs1raw --gs1strict --gssep --square"
|
||||
<< "zint -b 71 -d '010952012345678810BATCH4\\G2107' --dmb256=2 --esc --gs1raw --gs1strict --gssep --square"
|
||||
<< "zint.exe -b 71 -d \"010952012345678810BATCH4\\G2107\" --dmb256=2 --esc --gs1raw --gs1strict --gssep --square"
|
||||
<< "" << "" << "" << "";
|
||||
|
||||
QTest::newRow("BARCODE_DATAMATRIX") << false << 0.0f << ""
|
||||
<< BARCODE_DATAMATRIX << (DATA_MODE | ESCAPE_MODE | FAST_MODE) // symbology-inputMode
|
||||
<< "ABCDEFGH\\x01I" << "" // text-primary
|
||||
<< 0.0f << -1 << 0 << DM_ISO_144 << 1.0f // height-scale
|
||||
<< 0.0f << 0 << 0 << (DM_C40_START | DM_ISO_144) << 1.0f // height-scale
|
||||
<< 0.0f << false << 0.7f << 1.0f // dpmm-textGap
|
||||
<< 5.0f << 0 << 0 << "" // guardDescent-structAppID
|
||||
<< "" << "" << QColor(Qt::black) << QColor(Qt::white) << false // fgStr-cmyk
|
||||
@@ -1035,8 +1035,24 @@ private slots:
|
||||
<< 0 << false << false << false << false // eci-gs1SyntaxEngine
|
||||
<< false << false << false << WARN_DEFAULT << false // readerInit-debug
|
||||
<< 0.0 << 0 << 0 << 0 << 0 << 0 // xdimdp
|
||||
<< "zint -b 71 --binary -d 'ABCDEFGH\\x01I' --dmiso144 --esc --fast"
|
||||
<< "zint.exe -b 71 --binary -d \"ABCDEFGH\\x01I\" --dmiso144 --esc --fast"
|
||||
<< "zint -b 71 --binary -d 'ABCDEFGH\\x01I' --dmc40=0 --dmiso144 --esc --fast"
|
||||
<< "zint.exe -b 71 --binary -d \"ABCDEFGH\\x01I\" --dmc40=0 --dmiso144 --esc --fast"
|
||||
<< "" << "" << "" << "";
|
||||
|
||||
QTest::newRow("BARCODE_MAILMARK_2D") << false << 0.0f << ""
|
||||
<< BARCODE_DATAMATRIX << UNICODE_MODE // symbology-inputMode
|
||||
<< "JGB 012100123412345678AB19XY1A 0 www.xyz.com" << "" // text-primary
|
||||
<< 0.0f << 0 << 0 << DM_C40_START << 1.0f // height-scale
|
||||
<< 0.0f << false << 0.7f << 1.0f // dpmm-textGap
|
||||
<< 5.0f << 0 << 0 << "" // guardDescent-structAppID
|
||||
<< "" << "" << QColor(Qt::black) << QColor(Qt::white) << false // fgStr-cmyk
|
||||
<< 0 << 0 << 0 << 0 << 0 // borderTypeIndex-fontSetting
|
||||
<< true << false << false << false << true << 90 // showText-rotateAngle
|
||||
<< 0 << false << false << false << false // eci-gs1SyntaxEngine
|
||||
<< false << false << false << WARN_DEFAULT << false // readerInit-debug
|
||||
<< 0.0 << 0 << 0 << 0 << 0 << 0 // xdimdp
|
||||
<< "zint -b 71 -d 'JGB 012100123412345678AB19XY1A 0 www.xyz.com' --dmc40=0 --rotate=90"
|
||||
<< "zint.exe -b 71 -d \"JGB 012100123412345678AB19XY1A 0 www.xyz.com\" --dmc40=0 --rotate=90"
|
||||
<< "" << "" << "" << "";
|
||||
|
||||
QTest::newRow("BARCODE_DBAR_EXPSTK_CC") << false << 40.8f << ""
|
||||
|
||||
Reference in New Issue
Block a user