- PDF417/MICROPDF417: use latch not ps shift for padding when

spanning Text segments to avoid affecting 1st char of 2nd segment
- PDF417/MICROPDF417: add optimized encoding, FAST_MODE for
  previous scheme; formatting changes
- common.c/h: add `cnt_digits()`, comments in include and make more
  consistent, minor code fiddling
- DOTCODE: replace `dc_n_digits()` with new `cnt_digits()`
- test_qr: fix `test_qr_perf()`
- composite: minor code fiddling
- library: debug dump HIBC-processed input
- BWIPP: update to latest
This commit is contained in:
gitlost
2022-11-06 22:25:19 +00:00
parent fbfaabf004
commit e515f63fab
32 changed files with 3885 additions and 640 deletions

File diff suppressed because it is too large Load Diff

View File

@ -4417,7 +4417,7 @@ static void test_qr_perf(const testCtx *const p_ctx) {
struct item data[] = {
/* 0*/ { BARCODE_QRCODE, UNICODE_MODE, -1, -1,
"ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 12345678901234567890123456 点点点点点点点点点点点点点点点点点点点点点点点点点点",
0, 37, 37, "107 chars, Mixed modes" },
ZINT_WARN_NONCOMPLIANT, 37, 37, "107 chars, Mixed modes" },
/* 1*/ { BARCODE_QRCODE, UNICODE_MODE, -1, -1,
"ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 12345678901234567890123456 点点点点点点点点点点点点点点点点点点点点点点点点点点"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 12345678901234567890123456 点点点点点点点点点点点点点点点点点点点点点点点点点点"
@ -4428,7 +4428,7 @@ static void test_qr_perf(const testCtx *const p_ctx) {
"ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 12345678901234567890123456 点点点点点点点点点点点点点点点点点点点点点点点点点点"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 12345678901234567890123456 点点点点点点点点点点点点点点点点点点点点点点点点点点"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz 12345678901234567890123456 点点点点点点点点点点点点点点点点点点点点点点点点点点",
0, 105, 105, "963 chars, Mixed modes" },
ZINT_WARN_NONCOMPLIANT, 105, 105, "963 chars, Mixed modes" },
};
int data_size = ARRAY_SIZE(data);
int i, length, ret;

View File

@ -3342,7 +3342,7 @@ static const char *testUtilZXingCPPName(int index, const struct zint_symbol *sym
{ "DataBarExpanded", BARCODE_DBAR_EXPSTK, 81, },
{ "", BARCODE_PLANET, 82, },
{ "", -1, 83, },
{ "", BARCODE_MICROPDF417, 84, },
{ "MicroPDF417", BARCODE_MICROPDF417, 84, },
{ "", BARCODE_USPS_IMAIL, 85, },
{ "", BARCODE_PLESSEY, 86, },
{ "", BARCODE_TELEPEN_NUM, 87, },
@ -3468,9 +3468,9 @@ int testUtilCanZXingCPP(int index, const struct zint_symbol *symbol, const char
int testUtilZXingCPP(int index, struct zint_symbol *symbol, const char *source, const int length, char *bits,
char *buffer, const int buffer_size, int *p_cmp_len) {
static const char cmd_fmt[] = "zxingcppdecoder -width %d -textonly -format %s -bits '%s'";
static const char hint_cmd_fmt[] = "zxingcppdecoder -width %d -textonly -format %s -hint '%s' -bits '%s'";
static const char cs_cmd_fmt[] = "zxingcppdecoder -width %d -textonly -format %s -bits '%s' -charset %s";
static const char cmd_fmt[] = "zxingcppdecoder -textonly -format %s -width %d -bits '%s'";
static const char hint_cmd_fmt[] = "zxingcppdecoder -textonly -format %s -hint '%s' -width %d -bits '%s'";
static const char cs_cmd_fmt[] = "zxingcppdecoder -textonly -format %s -charset %s -width %d -bits '%s'";
const int bits_len = (int) strlen(bits);
const int width = symbol->width;
@ -3519,11 +3519,11 @@ int testUtilZXingCPP(int index, struct zint_symbol *symbol, const char *source,
} else {
charset = "ISO8859_1";
}
sprintf(cmd, cs_cmd_fmt, width, zxingcpp_barcode, bits, charset);
sprintf(cmd, cs_cmd_fmt, zxingcpp_barcode, charset, width, bits);
} else if (hint) {
sprintf(cmd, hint_cmd_fmt, width, zxingcpp_barcode, hint, bits);
sprintf(cmd, hint_cmd_fmt, zxingcpp_barcode, hint, width, bits);
} else {
sprintf(cmd, cmd_fmt, width, zxingcpp_barcode, bits);
sprintf(cmd, cmd_fmt, zxingcpp_barcode, width, bits);
}
if (symbol->debug & ZINT_DEBUG_TEST_PRINT) {