mirror of
https://git.code.sf.net/p/zint/code
synced 2025-05-14 23:24:39 -04:00
- CODABLOCKF: fix misencodation of extended ASCII 0xB0-0xB9 when
followed by digit (ignore 2nd byte of FNC4 when categorizing Code C characters) - New `ZBarcode_Cap()` flag `ZINT_CAP_BINDABLE`, differentiated from `ZINT_CAP_STACKABLE`, and new Qt Backend method `isBindable()` - CLI: fix `separator` check to use new `ZINT_CAP_BINDABLE` instead of `ZINT_CAP_STACKABLE` - ZBarcode_Cap: add missing symbologies to `ZINT_CAP_BINDABLE` (was `ZINT_CAP_STACKABLE`) - DOTCODE: pad rows if given number of columns instead of failing if rows below min (5) - DBAR/composites: ensure stacked symbologies and composites are not stacked (set `symbol->rows` to 0) - test suite: move `test_perf` routines into single test "test_perf"; new "test_random" (based on "test_bwipp") to test various symbologies with random binary - discovered CODABLOCKF bug; expand "test_bwipp" manual: Feeback: mention AZTEC -1 meaning min & MICROPDF417: doc new `ZINT_CAP_BINDABLE` general: various code fiddlings and re-formattings
This commit is contained in:
parent
2370fbfbb7
commit
a74871a7de
60 changed files with 3509 additions and 3267 deletions
|
@ -306,14 +306,10 @@ static int dm_look_ahead_test(const unsigned char source[], const int length, co
|
|||
}
|
||||
|
||||
switch (current_mode) {
|
||||
case DM_C40: c40_count = 0;
|
||||
break;
|
||||
case DM_TEXT: text_count = 0;
|
||||
break;
|
||||
case DM_X12: x12_count = 0;
|
||||
break;
|
||||
case DM_EDIFACT: edf_count = 0;
|
||||
break;
|
||||
case DM_C40: c40_count = 0; break;
|
||||
case DM_TEXT: text_count = 0; break;
|
||||
case DM_X12: x12_count = 0; break;
|
||||
case DM_EDIFACT: edf_count = 0; break;
|
||||
case DM_BASE256:
|
||||
b256_count = mode_arg == 249 ? DM_MULT_1 : 0; /* Adjusted to use no. of bytes written */
|
||||
break;
|
||||
|
@ -656,19 +652,24 @@ static int dm_switch_mode(const int next_mode, unsigned char target[], int tp, i
|
|||
case DM_ASCII:
|
||||
if (debug_print) fputs("ASC ", stdout);
|
||||
break;
|
||||
case DM_C40: target[tp++] = 230;
|
||||
case DM_C40:
|
||||
target[tp++] = 230;
|
||||
if (debug_print) fputs("C40 ", stdout);
|
||||
break;
|
||||
case DM_TEXT: target[tp++] = 239;
|
||||
case DM_TEXT:
|
||||
target[tp++] = 239;
|
||||
if (debug_print) fputs("TEX ", stdout);
|
||||
break;
|
||||
case DM_X12: target[tp++] = 238;
|
||||
case DM_X12:
|
||||
target[tp++] = 238;
|
||||
if (debug_print) fputs("X12 ", stdout);
|
||||
break;
|
||||
case DM_EDIFACT: target[tp++] = 240;
|
||||
case DM_EDIFACT:
|
||||
target[tp++] = 240;
|
||||
if (debug_print) fputs("EDI ", stdout);
|
||||
break;
|
||||
case DM_BASE256: target[tp++] = 231;
|
||||
case DM_BASE256:
|
||||
target[tp++] = 231;
|
||||
*p_b256_start = tp;
|
||||
target[tp++] = 0; /* Byte count holder (may be expanded to 2 codewords) */
|
||||
if (debug_print) fputs("BAS ", stdout);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue