diff --git a/ChangeLog b/ChangeLog index c13fe5bd..a89275be 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,6 +1,27 @@ Version 2.11.1.9 (dev) not released yet ======================================= +**Incompatible changes** +------------------------ +- DOTCODE, QRCODE, RMQR: now return warning if ECI or Structured Append used in + GS1 mode +- CLI now returns an error if unknown option given or if option is missing its + argument + NOTE: previously printed error messages but continued without returning an + error + +Changes +------- +- DOTCODE, QRCODE, RMQR: return warning if ECI or Structured Append used in GS1 + mode, ticket #271 +- CLI: improve `getopt_long_only()` processing, printing own message if bad arg + and returning error if so rather than continuing to process +- manual: MSE typo -> MSI; adjust SVG scaling for PDF manual; pandoc 2.19.2 + +Bugs +---- +- GUI: fix "Border Width" ampersand shortcut + Version 2.11.1 (2022-08-22) =========================== diff --git a/backend/common.c b/backend/common.c index 4fa00ac7..17247466 100644 --- a/backend/common.c +++ b/backend/common.c @@ -78,7 +78,7 @@ INTERNAL void to_upper(unsigned char source[], const int length) { for (i = 0; i < length; i++) { if (z_islower(source[i])) { - source[i] = (source[i] - 'a') + 'A'; + source[i] &= 0x5F; } } } diff --git a/backend/dotcode.c b/backend/dotcode.c index f6f7dd64..fa0de6bd 100644 --- a/backend/dotcode.c +++ b/backend/dotcode.c @@ -1213,6 +1213,7 @@ static void dc_force_corners(const int width, const int height, char *dot_array) } INTERNAL int dotcode(struct zint_symbol *symbol, struct zint_seg segs[], const int seg_count) { + int warn_number = 0; int i, j, k; int jc, n_dots; int data_length, ecc_length; @@ -1226,6 +1227,7 @@ INTERNAL int dotcode(struct zint_symbol *symbol, struct zint_seg segs[], const i unsigned char structapp_array[5]; int structapp_size = 0; int padding_dots; + const int gs1 = (symbol->input_mode & 0x07) == GS1_MODE; const int debug_print = (symbol->debug & ZINT_DEBUG_PRINT); /* Allow 4 codewords per input + 2 (FNC) + seg_count * 4 (ECI) + 2 (special char 1st position) + 5 (Structured Append) + 10 (PAD) */ @@ -1260,8 +1262,21 @@ INTERNAL int dotcode(struct zint_symbol *symbol, struct zint_seg segs[], const i } } - /* TODO: GS1 General Specifications 22.0 section 5.8.2 says Structured Append and ECIs not supported - for GS1 DotCode so should check and return ZINT_WARN_NONCOMPLIANT if either true */ + /* GS1 General Specifications 22.0 section 5.8.2 says Structured Append and ECIs not supported + for GS1 DotCode so check and return ZINT_WARN_NONCOMPLIANT if either true */ + if (gs1 && warn_number == 0) { + for (i = 0; i < seg_count; i++) { + if (segs[i].eci) { + strcpy(symbol->errtxt, "733: Using ECI in GS1 mode not supported by GS1 standards"); + warn_number = ZINT_WARN_NONCOMPLIANT; + break; + } + } + if (warn_number == 0 && symbol->structapp.count) { + strcpy(symbol->errtxt, "734: Using Structured Append in GS1 mode not supported by GS1 standards"); + warn_number = ZINT_WARN_NONCOMPLIANT; + } + } data_length = dc_encode_message_segs(symbol, segs, seg_count, codeword_array, &binary_finish, structapp_array, &structapp_size); @@ -1539,7 +1554,7 @@ INTERNAL int dotcode(struct zint_symbol *symbol, struct zint_seg segs[], const i symbol->output_options |= BARCODE_DOTTY_MODE; - return 0; + return warn_number; } /* vim: set ts=4 sw=4 et : */ diff --git a/backend/library.c b/backend/library.c index ee3ec582..abc2f41d 100644 --- a/backend/library.c +++ b/backend/library.c @@ -888,13 +888,17 @@ int ZBarcode_Encode_Segs(struct zint_symbol *symbol, const struct zint_seg segs[ } if (symbol->debug & ZINT_DEBUG_PRINT) { - printf("ZBarcode_Encode_Segs: symbology: %d, input_mode: 0x%X, ECI: %d, option_1: %d, option_2: %d," - " option_3: %d, scale: %g\n output_options: 0x%X, fg: %s, bg: %s," - " seg_count: %d, length[0] %d," " First 10 source[0] \"%.*s\", First 10 primary: \"%.10s\"\n", - symbol->symbology, symbol->input_mode, symbol->eci, symbol->option_1, symbol->option_2, + const int len = local_segs[0].length; + const int primary_len = symbol->primary[0] ? (int) strlen(symbol->primary) : 0; + char name[32]; + (void) ZBarcode_BarcodeName(symbol->symbology, name); + printf("\nZBarcode_Encode_Segs: %s (%d), input_mode: 0x%X, ECI: %d, option_1: %d, option_2: %d" + ", option_3: %d,\n scale: %g, output_options: 0x%X, fg: %s, bg: %s" + ", seg_count: %d,\n %ssource%s (%d): \"%.*s\", %sprimary (%d): \"%.20s\"\n", + name, symbol->symbology, symbol->input_mode, symbol->eci, symbol->option_1, symbol->option_2, symbol->option_3, symbol->scale, symbol->output_options, symbol->fgcolour, symbol->bgcolour, - seg_count, local_segs[0].length, local_segs[0].length < 10 ? local_segs[0].length : 10, - local_segs[0].source, symbol->primary); + seg_count, len > 20 ? "First 20 " : "", seg_count > 1 ? "[0]" : "", len, len > 20 ? 20 : len, + local_segs[0].source, primary_len > 20 ? "First 20 " : "", primary_len, symbol->primary); } if (total_len > ZINT_MAX_DATA_LEN) { diff --git a/backend/qr.c b/backend/qr.c index 1662c07d..7b1386b2 100644 --- a/backend/qr.c +++ b/backend/qr.c @@ -1580,11 +1580,12 @@ INTERNAL int qrcode(struct zint_symbol *symbol, struct zint_seg segs[], const in int warn_number; int i, j, est_binlen, prev_est_binlen; int ecc_level, autosize, version, max_cw, target_codewords, blocks, size; - int bitmask, gs1; + int bitmask; int user_mask; int canShrink; int size_squared; const struct zint_structapp *p_structapp = NULL; + const int gs1 = ((symbol->input_mode & 0x07) == GS1_MODE); const int debug_print = symbol->debug & ZINT_DEBUG_PRINT; const int eci_length_segs = get_eci_length_segs(segs, seg_count); struct zint_seg *local_segs = (struct zint_seg *) z_alloca(sizeof(struct zint_seg) * seg_count); @@ -1595,8 +1596,6 @@ INTERNAL int qrcode(struct zint_symbol *symbol, struct zint_seg segs[], const in unsigned char *fullstream; unsigned char *grid; - gs1 = ((symbol->input_mode & 0x07) == GS1_MODE); - user_mask = (symbol->option_3 >> 8) & 0x0F; /* User mask is pattern + 1, so >= 1 and <= 8 */ if (user_mask > 8) { user_mask = 0; /* Ignore */ @@ -1641,8 +1640,21 @@ INTERNAL int qrcode(struct zint_symbol *symbol, struct zint_seg segs[], const in p_structapp = &symbol->structapp; } - /* TODO: GS1 General Specifications 22.0 section 5.7.3 says Structured Append and ECIs not supported - for GS1 QR Code so should check and return ZINT_WARN_NONCOMPLIANT if either true */ + /* GS1 General Specifications 22.0 section 5.7.3 says Structured Append and ECIs not supported + for GS1 QR Code so check and return ZINT_WARN_NONCOMPLIANT if either true */ + if (gs1 && warn_number == 0) { + for (i = 0; i < seg_count; i++) { + if (local_segs[i].eci) { + strcpy(symbol->errtxt, "755: Using ECI in GS1 mode not supported by GS1 standards"); + warn_number = ZINT_WARN_NONCOMPLIANT; + break; + } + } + if (warn_number == 0 && p_structapp) { + strcpy(symbol->errtxt, "756: Using Structured Append in GS1 mode not supported by GS1 standards"); + warn_number = ZINT_WARN_NONCOMPLIANT; + } + } est_binlen = qr_calc_binlen_segs(40, mode, ddata, local_segs, seg_count, p_structapp, 0 /*mode_preset*/, gs1, debug_print); @@ -2975,9 +2987,9 @@ INTERNAL int rmqr(struct zint_symbol *symbol, struct zint_seg segs[], const int int warn_number; int i, j, est_binlen; int ecc_level, autosize, version, max_cw, target_codewords, blocks, h_size, v_size; - int gs1; int footprint, best_footprint, format_data; unsigned int left_format_info, right_format_info; + const int gs1 = ((symbol->input_mode & 0x07) == GS1_MODE); const int debug_print = symbol->debug & ZINT_DEBUG_PRINT; const int eci_length_segs = get_eci_length_segs(segs, seg_count); struct zint_seg *local_segs = (struct zint_seg *) z_alloca(sizeof(struct zint_seg) * seg_count); @@ -2987,8 +2999,6 @@ INTERNAL int rmqr(struct zint_symbol *symbol, struct zint_seg segs[], const int unsigned char *fullstream; unsigned char *grid; - gs1 = ((symbol->input_mode & 0x07) == GS1_MODE); - segs_cpy(symbol, segs, seg_count, local_segs); warn_number = qr_prep_data(symbol, local_segs, seg_count, ddata); @@ -2996,6 +3006,18 @@ INTERNAL int rmqr(struct zint_symbol *symbol, struct zint_seg segs[], const int return warn_number; } + /* GS1 General Specifications 22.0 section 5.7.3 says ECIs not supported + for GS1 QR Code so check and return ZINT_WARN_NONCOMPLIANT if true */ + if (gs1 && warn_number == 0) { + for (i = 0; i < seg_count; i++) { + if (local_segs[i].eci) { + strcpy(symbol->errtxt, "757: Using ECI in GS1 mode not supported by GS1 standards"); + warn_number = ZINT_WARN_NONCOMPLIANT; + break; + } + } + } + est_binlen = qr_calc_binlen_segs(RMQR_VERSION + 31, mode, ddata, local_segs, seg_count, NULL /*p_structapp*/, 0 /*mode_preset*/, gs1, debug_print); diff --git a/backend/tests/test_dotcode.c b/backend/tests/test_dotcode.c index 0942534f..9b43a31b 100644 --- a/backend/tests/test_dotcode.c +++ b/backend/tests/test_dotcode.c @@ -82,6 +82,7 @@ static void test_options(const testCtx *const p_ctx) { struct item { int input_mode; + int eci; int output_options; int option_2; int option_3; @@ -95,23 +96,26 @@ static void test_options(const testCtx *const p_ctx) { }; /* s/\/\*[ 0-9]*\*\//\=printf("\/\*%3d*\/", line(".") - line("'<")): */ struct item data[] = { - /* 0*/ { -1, -1, -1, -1, { 0, 0, "" }, "1", 0, 9, 14, "" }, - /* 1*/ { -1, -1, -1, -1, { 0, 0, "" }, "1234567890", 0, 12, 19, "" }, - /* 2*/ { -1, -1, 19, -1, { 0, 0, "" }, "1234567890", 0, 12, 19, "" }, - /* 3*/ { -1, -1, 12, -1, { 0, 0, "" }, "1234567890", 0, 19, 12, "" }, - /* 4*/ { -1, -1, 5, -1, { 0, 0, "" }, "1234567890", 0, 44, 5, "" }, - /* 5*/ { -1, -1, 4, -1, { 0, 0, "" }, "1234567890", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 529: Symbol width 4 is too small" }, /* Cols < 5 */ - /* 6*/ { -1, -1, 200, -1, { 0, 0, "" }, "1234567890", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 529: Symbol height 3 is too small" }, /* Not enough data - height 3 too small */ - /* 7*/ { -1, -1, 200, -1, { 0, 0, "" }, "1234567890123456789012345678901234567890", 0, 5, 200, "" }, /* Cols 200 max */ - /* 8*/ { -1, -1, 200, -1, { 0, 0, "" }, "12345678901234567890123456789012345678901234567890123456789012345678901234567890", 0, 7, 200, "" }, - /* 9*/ { -1, -1, 201, -1, { 0, 0, "" }, "12345678901234567890123456789012345678901234567890123456789012345678901234567890", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 528: Symbol width 201 is too large" }, - /* 10*/ { -1, -1, -1, 10 << 8, { 0, 0, "" }, "1", 0, 9, 14, "" }, /* Mask > 8 + 1 ignored */ - /* 11*/ { -1, -1, 19, -1, { 0, 0, "" }, "ABCDE", 0, 12, 19, "" }, - /* 12*/ { -1, -1, 19, -1, { 35, 35, "" }, "ABCDE", 0, 16, 19, "" }, - /* 13*/ { -1, -1, 19, -1, { 1, 1, "" }, "ABCDE", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 730: Structured Append count out of range (2-35)" }, - /* 14*/ { -1, -1, 19, -1, { 1, 36, "" }, "ABCDE", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 730: Structured Append count out of range (2-35)" }, - /* 15*/ { -1, -1, 19, -1, { 3, 2, "" }, "ABCDE", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 731: Structured Append index out of range (1-2)" }, - /* 16*/ { -1, -1, 19, -1, { 1, 2, "1" }, "ABCDE", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 732: Structured Append ID not available for DotCode" }, + /* 0*/ { -1, -1, -1, -1, -1, { 0, 0, "" }, "1", 0, 9, 14, "" }, + /* 1*/ { -1, -1, -1, -1, -1, { 0, 0, "" }, "1234567890", 0, 12, 19, "" }, + /* 2*/ { -1, -1, -1, 19, -1, { 0, 0, "" }, "1234567890", 0, 12, 19, "" }, + /* 3*/ { -1, -1, -1, 12, -1, { 0, 0, "" }, "1234567890", 0, 19, 12, "" }, + /* 4*/ { -1, -1, -1, 5, -1, { 0, 0, "" }, "1234567890", 0, 44, 5, "" }, + /* 5*/ { -1, -1, -1, 4, -1, { 0, 0, "" }, "1234567890", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 529: Symbol width 4 is too small" }, /* Cols < 5 */ + /* 6*/ { -1, -1, -1, 200, -1, { 0, 0, "" }, "1234567890", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 529: Symbol height 3 is too small" }, /* Not enough data - height 3 too small */ + /* 7*/ { -1, -1, -1, 200, -1, { 0, 0, "" }, "1234567890123456789012345678901234567890", 0, 5, 200, "" }, /* Cols 200 max */ + /* 8*/ { -1, -1, -1, 200, -1, { 0, 0, "" }, "12345678901234567890123456789012345678901234567890123456789012345678901234567890", 0, 7, 200, "" }, + /* 9*/ { -1, -1, -1, 201, -1, { 0, 0, "" }, "12345678901234567890123456789012345678901234567890123456789012345678901234567890", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 528: Symbol width 201 is too large" }, + /* 10*/ { -1, -1, -1, -1, 10 << 8, { 0, 0, "" }, "1", 0, 9, 14, "" }, /* Mask > 8 + 1 ignored */ + /* 11*/ { -1, -1, -1, 19, -1, { 0, 0, "" }, "ABCDE", 0, 12, 19, "" }, + /* 12*/ { -1, -1, -1, 19, -1, { 35, 35, "" }, "ABCDE", 0, 16, 19, "" }, + /* 13*/ { -1, -1, -1, 19, -1, { 1, 1, "" }, "ABCDE", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 730: Structured Append count out of range (2-35)" }, + /* 14*/ { -1, -1, -1, 19, -1, { 1, 36, "" }, "ABCDE", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 730: Structured Append count out of range (2-35)" }, + /* 15*/ { -1, -1, -1, 19, -1, { 3, 2, "" }, "ABCDE", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 731: Structured Append index out of range (1-2)" }, + /* 16*/ { -1, -1, -1, 19, -1, { 1, 2, "1" }, "ABCDE", ZINT_ERROR_INVALID_OPTION, -1, -1, "Error 732: Structured Append ID not available for DotCode" }, + /* 17*/ { GS1_MODE, 3, -1, -1, -1, { 0, 0, "" }, "[20]01", ZINT_WARN_NONCOMPLIANT, 11, 16, "Warning 733: Using ECI in GS1 mode not supported by GS1 standards" }, + /* 18*/ { GS1_MODE, -1, -1, -1, -1, { 1, 2, "" }, "[20]01", ZINT_WARN_NONCOMPLIANT, 12, 19, "Warning 734: Using Structured Append in GS1 mode not supported by GS1 standards" }, + /* 19*/ { GS1_MODE, 3, -1, -1, -1, { 1, 2, "" }, "[20]01", ZINT_WARN_NONCOMPLIANT, 14, 21, "Warning 733: Using ECI in GS1 mode not supported by GS1 standards" }, /* ECI trumps Structured Append */ }; int data_size = ARRAY_SIZE(data); int i, length, ret; @@ -126,7 +130,7 @@ static void test_options(const testCtx *const p_ctx) { symbol = ZBarcode_Create(); assert_nonnull(symbol, "Symbol not created\n"); - length = testUtilSetSymbol(symbol, BARCODE_DOTCODE, data[i].input_mode, -1 /*eci*/, -1 /*option_1*/, data[i].option_2, data[i].option_3, data[i].output_options, data[i].data, -1, debug); + length = testUtilSetSymbol(symbol, BARCODE_DOTCODE, data[i].input_mode, data[i].eci, -1 /*option_1*/, data[i].option_2, data[i].option_3, data[i].output_options, data[i].data, -1, debug); if (data[i].structapp.count) { symbol->structapp = data[i].structapp; } diff --git a/backend/tests/test_qr.c b/backend/tests/test_qr.c index 723cbf29..733665cb 100644 --- a/backend/tests/test_qr.c +++ b/backend/tests/test_qr.c @@ -35,6 +35,8 @@ static void test_qr_options(const testCtx *const p_ctx) { int debug = p_ctx->debug; struct item { + int input_mode; + int eci; int option_1; int option_2; struct zint_structapp structapp; @@ -43,52 +45,56 @@ static void test_qr_options(const testCtx *const p_ctx) { int ret_vector; int expected_size; int compare_previous; + char *expected; }; /* 貫 U+8CAB kanji, in Shift JIS 0x8AD1 (\212\321), UTF-8 E8B2AB */ /* s/\/\*[ 0-9]*\*\//\=printf("\/\*%3d*\/", line(".") - line("'<")): */ struct item data[] = { - /* 0*/ { -1, -1, { 0, 0, "" }, "12345", 0, 0, 21, -1 }, /* ECC auto-set to 1 (L), version auto-set to 1 */ - /* 1*/ { 5, -1, { 0, 0, "" }, "12345", 0, 0, 21, 0 }, /* ECC > 4 ignored */ - /* 2*/ { -1, 41, { 0, 0, "" }, "12345", 0, 0, 21, 0 }, /* Version > 40 ignored */ - /* 3*/ { -1, 2, { 0, 0, "" }, "12345", 0, 0, 25, -1 }, /* ECC auto-set to 4 (Q), version 2 */ - /* 4*/ { 4, 2, { 0, 0, "" }, "12345", 0, 0, 25, 0 }, /* ECC 4 (Q), version 2 */ - /* 5*/ { 1, 2, { 0, 0, "" }, "12345", 0, 0, 25, 1 }, /* ECC 1 (L), version 2 */ - /* 6*/ { -1, -1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 21, -1 }, /* ECC auto-set to 1 (L), version auto-set to 1 */ - /* 7*/ { 1, -1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 21, 0 }, /* Version auto-set to 1 */ - /* 8*/ { -1, 1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 21, 0 }, /* ECC auto-set to 1 (L) */ - /* 9*/ { 1, 1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 21, 0 }, - /* 10*/ { 2, 1, { 0, 0, "" }, "貫やぐ識禁", ZINT_ERROR_TOO_LONG, -1, 0, -1 }, /* ECC 2 (M), version 1 */ - /* 11*/ { 2, -1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 25, -1 }, /* Version auto-set to 2 */ - /* 12*/ { 2, 2, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 25, 0 }, - /* 13*/ { 1, 2, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 25, 1 }, - /* 14*/ { -1, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 29, -1 }, /* ECC auto-set to 1 (L), version auto-set to 3 */ - /* 15*/ { 1, 3, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 29, 0 }, - /* 16*/ { 2, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 33, -1 }, /* ECC 2 (M), version auto-set to 4 */ - /* 17*/ { 2, 4, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 33, 0 }, - /* 18*/ { 3, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 37, -1 }, /* ECC 3 (Q), version auto-set to 5 */ - /* 19*/ { 3, 5, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 37, 0 }, - /* 20*/ { 4, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 41, -1 }, /* ECC 4 (H), version auto-set to 6 */ - /* 21*/ { 4, 6, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 41, 0 }, - /* 22*/ { -1, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。", 0, 0, 69, -1 }, /* ECC auto-set to 1, version auto-set to 13 */ - /* 23*/ { 1, 13, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。", 0, 0, 69, 0 }, - /* 24*/ { 4, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。", 0, 0, 101, -1 }, /* ECC 4, version auto-set to 21 */ - /* 25*/ { 4, 21, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。", 0, 0, 101, 0 }, - /* 26*/ { -1, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。社ト可化モマ試音ばじご育青康演ぴぎ権型固スで能麩ぜらもほ河都しちほラ収90作の年要とだむ部動ま者断チ第41一1米索焦茂げむしれ。測フ物使だて目月国スリカハ夏検にいへ児72告物ゆは載核ロアメヱ登輸どべゃ催行アフエハ議歌ワ河倫剖だ。記タケウ因載ヒイホヤ禁3輩彦関トえび肝区勝ワリロ成禁ぼよ界白ウヒキレ中島べせぜい各安うしぽリ覧生テ基一でむしゃ中新トヒキソ声碁スしび起田ア信大未ゅもばち。", 0, 0, 105, -1 }, /* ECC auto-set to 1, version auto-set to 22 */ - /* 27*/ { 1, 22, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。社ト可化モマ試音ばじご育青康演ぴぎ権型固スで能麩ぜらもほ河都しちほラ収90作の年要とだむ部動ま者断チ第41一1米索焦茂げむしれ。測フ物使だて目月国スリカハ夏検にいへ児72告物ゆは載核ロアメヱ登輸どべゃ催行アフエハ議歌ワ河倫剖だ。記タケウ因載ヒイホヤ禁3輩彦関トえび肝区勝ワリロ成禁ぼよ界白ウヒキレ中島べせぜい各安うしぽリ覧生テ基一でむしゃ中新トヒキソ声碁スしび起田ア信大未ゅもばち。", 0, 0, 105, 0 }, - /* 28*/ { 4, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。社ト可化モマ試音ばじご育青康演ぴぎ権型固スで能麩ぜらもほ河都しちほラ収90作の年要とだむ部動ま者断チ第41一1米索焦茂げむしれ。測フ物使だて目月国スリカハ夏検にいへ児72告物ゆは載核ロアメヱ登輸どべゃ催行アフエハ議歌ワ河倫剖だ。記タケウ因載ヒイホヤ禁3輩彦関トえび肝区勝ワリロ成禁ぼよ界白ウヒキレ中島べせぜい各安うしぽリ覧生テ基一でむしゃ中新トヒキソ声碁スしび起田ア信大未ゅもばち。", 0, 0, 153, 1 }, /* ECC 4, version auto-set 34 */ - /* 29*/ { 4, 34, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。社ト可化モマ試音ばじご育青康演ぴぎ権型固スで能麩ぜらもほ河都しちほラ収90作の年要とだむ部動ま者断チ第41一1米索焦茂げむしれ。測フ物使だて目月国スリカハ夏検にいへ児72告物ゆは載核ロアメヱ登輸どべゃ催行アフエハ議歌ワ河倫剖だ。記タケウ因載ヒイホヤ禁3輩彦関トえび肝区勝ワリロ成禁ぼよ界白ウヒキレ中島べせぜい各安うしぽリ覧生テ基一でむしゃ中新トヒキソ声碁スしび起田ア信大未ゅもばち。", 0, 0, 153, 0 }, - /* 30*/ { 4, -1, { 0, 0, "" }, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", 0, 0, 177, -1 }, /* 1852 alphanumerics max for ECC 4 (H) */ - /* 31*/ { 1, -1, { 0, 0, "" }, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", 0, 0, 177, -1 }, /* 4296 alphanumerics max for ECC 1 (L) */ - /* 32*/ { 4, -1, { 0, 0, "" }, "貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫", 0, -1, 0, -1 }, /* 424 Kanji, ECC 4 (Q), version 1 */ - /* 33*/ { 4, -1, { 0, 0, "" }, "貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫", ZINT_ERROR_TOO_LONG, -1, 0, -1 }, /* 425 Kanji, ECC 4 (Q), version 1 */ - /* 34*/ { 4, 1, { 0, 0, "" }, "12345678901234567", 0, 0, 21, -1 }, - /* 35*/ { 4, 1, { 1, 2, "" }, "12345678901234567", ZINT_ERROR_TOO_LONG, -1, 0, -1 }, - /* 36*/ { 4, 1, { 1, 2, "" }, "123456789012", ZINT_ERROR_TOO_LONG, -1, 0, -1 }, - /* 37*/ { 4, 1, { 1, 2, "" }, "12345678901", 0, 0, 21, -1 }, - /* 38*/ { 4, 1, { 3, 16, "123" }, "12345678901", 0, 0, 21, -1 }, - /* 39*/ { 4, 1, { 3, 17, "123" }, "12345678901", ZINT_ERROR_INVALID_OPTION, -1, 0, -1 }, /* Bad Structured Append count */ - /* 40*/ { 4, 1, { 3, 2, "123" }, "12345678901", ZINT_ERROR_INVALID_OPTION, -1, 0, -1 }, /* Bad Structured Append index */ - /* 41*/ { 4, 1, { 1, 2, "256" }, "12345678901", ZINT_ERROR_INVALID_OPTION, -1, 0, -1 }, /* Bad Structured Append ID */ + /* 0*/ { -1, -1, -1, -1, { 0, 0, "" }, "12345", 0, 0, 21, -1, "" }, /* ECC auto-set to 1 (L), version auto-set to 1 */ + /* 1*/ { -1, -1, 5, -1, { 0, 0, "" }, "12345", 0, 0, 21, 0, "" }, /* ECC > 4 ignored */ + /* 2*/ { -1, -1, -1, 41, { 0, 0, "" }, "12345", 0, 0, 21, 0, "" }, /* Version > 40 ignored */ + /* 3*/ { -1, -1, -1, 2, { 0, 0, "" }, "12345", 0, 0, 25, -1, "" }, /* ECC auto-set to 4 (Q), version 2 */ + /* 4*/ { -1, -1, 4, 2, { 0, 0, "" }, "12345", 0, 0, 25, 0, "" }, /* ECC 4 (Q), version 2 */ + /* 5*/ { -1, -1, 1, 2, { 0, 0, "" }, "12345", 0, 0, 25, 1, "" }, /* ECC 1 (L), version 2 */ + /* 6*/ { -1, -1, -1, -1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 21, -1, "" }, /* ECC auto-set to 1 (L), version auto-set to 1 */ + /* 7*/ { -1, -1, 1, -1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 21, 0, "" }, /* Version auto-set to 1 */ + /* 8*/ { -1, -1, -1, 1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 21, 0, "" }, /* ECC auto-set to 1 (L) */ + /* 9*/ { -1, -1, 1, 1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 21, 0, "" }, + /* 10*/ { -1, -1, 2, 1, { 0, 0, "" }, "貫やぐ識禁", ZINT_ERROR_TOO_LONG, -1, 0, -1, "Error 569: Input too long for selected symbol size" }, /* ECC 2 (M), version 1 */ + /* 11*/ { -1, -1, 2, -1, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 25, -1, "" }, /* Version auto-set to 2 */ + /* 12*/ { -1, -1, 2, 2, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 25, 0, "" }, + /* 13*/ { -1, -1, 1, 2, { 0, 0, "" }, "貫やぐ識禁", 0, 0, 25, 1, "" }, + /* 14*/ { -1, -1, -1, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 29, -1, "" }, /* ECC auto-set to 1 (L), version auto-set to 3 */ + /* 15*/ { -1, -1, 1, 3, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 29, 0, "" }, + /* 16*/ { -1, -1, 2, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 33, -1, "" }, /* ECC 2 (M), version auto-set to 4 */ + /* 17*/ { -1, -1, 2, 4, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 33, 0, "" }, + /* 18*/ { -1, -1, 3, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 37, -1, "" }, /* ECC 3 (Q), version auto-set to 5 */ + /* 19*/ { -1, -1, 3, 5, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 37, 0, "" }, + /* 20*/ { -1, -1, 4, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 41, -1, "" }, /* ECC 4 (H), version auto-set to 6 */ + /* 21*/ { -1, -1, 4, 6, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁", 0, 0, 41, 0, "" }, + /* 22*/ { -1, -1, -1, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。", 0, 0, 69, -1, "" }, /* ECC auto-set to 1, version auto-set to 13 */ + /* 23*/ { -1, -1, 1, 13, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。", 0, 0, 69, 0, "" }, + /* 24*/ { -1, -1, 4, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。", 0, 0, 101, -1, "" }, /* ECC 4, version auto-set to 21 */ + /* 25*/ { -1, -1, 4, 21, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。", 0, 0, 101, 0, "" }, + /* 26*/ { -1, -1, -1, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。社ト可化モマ試音ばじご育青康演ぴぎ権型固スで能麩ぜらもほ河都しちほラ収90作の年要とだむ部動ま者断チ第41一1米索焦茂げむしれ。測フ物使だて目月国スリカハ夏検にいへ児72告物ゆは載核ロアメヱ登輸どべゃ催行アフエハ議歌ワ河倫剖だ。記タケウ因載ヒイホヤ禁3輩彦関トえび肝区勝ワリロ成禁ぼよ界白ウヒキレ中島べせぜい各安うしぽリ覧生テ基一でむしゃ中新トヒキソ声碁スしび起田ア信大未ゅもばち。", 0, 0, 105, -1, "" }, /* ECC auto-set to 1, version auto-set to 22 */ + /* 27*/ { -1, -1, 1, 22, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。社ト可化モマ試音ばじご育青康演ぴぎ権型固スで能麩ぜらもほ河都しちほラ収90作の年要とだむ部動ま者断チ第41一1米索焦茂げむしれ。測フ物使だて目月国スリカハ夏検にいへ児72告物ゆは載核ロアメヱ登輸どべゃ催行アフエハ議歌ワ河倫剖だ。記タケウ因載ヒイホヤ禁3輩彦関トえび肝区勝ワリロ成禁ぼよ界白ウヒキレ中島べせぜい各安うしぽリ覧生テ基一でむしゃ中新トヒキソ声碁スしび起田ア信大未ゅもばち。", 0, 0, 105, 0, "" }, + /* 28*/ { -1, -1, 4, -1, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。社ト可化モマ試音ばじご育青康演ぴぎ権型固スで能麩ぜらもほ河都しちほラ収90作の年要とだむ部動ま者断チ第41一1米索焦茂げむしれ。測フ物使だて目月国スリカハ夏検にいへ児72告物ゆは載核ロアメヱ登輸どべゃ催行アフエハ議歌ワ河倫剖だ。記タケウ因載ヒイホヤ禁3輩彦関トえび肝区勝ワリロ成禁ぼよ界白ウヒキレ中島べせぜい各安うしぽリ覧生テ基一でむしゃ中新トヒキソ声碁スしび起田ア信大未ゅもばち。", 0, 0, 153, 1, "" }, /* ECC 4, version auto-set 34 */ + /* 29*/ { -1, -1, 4, 34, { 0, 0, "" }, "貫やぐ識禁ぱい再2間変字全ノレ没無8裁花ほゃ過法ひなご札17能つーびれ投覧マ勝動エヨ額界よみ作皇ナヲニ打題ヌルヲ掲布益フが。入35能ト権話しこを断兆モヘ細情おじ名4減エヘイハ側機はょが意見想ハ業独案ユヲウ患職ヲ平美さ毎放どぽたけ家没べお化富べ町大シ情魚ッでれ一冬すぼめり。社ト可化モマ試音ばじご育青康演ぴぎ権型固スで能麩ぜらもほ河都しちほラ収90作の年要とだむ部動ま者断チ第41一1米索焦茂げむしれ。測フ物使だて目月国スリカハ夏検にいへ児72告物ゆは載核ロアメヱ登輸どべゃ催行アフエハ議歌ワ河倫剖だ。記タケウ因載ヒイホヤ禁3輩彦関トえび肝区勝ワリロ成禁ぼよ界白ウヒキレ中島べせぜい各安うしぽリ覧生テ基一でむしゃ中新トヒキソ声碁スしび起田ア信大未ゅもばち。", 0, 0, 153, 0, "" }, + /* 30*/ { -1, -1, 4, -1, { 0, 0, "" }, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", 0, 0, 177, -1, "" }, /* 1852 alphanumerics max for ECC 4 (H) */ + /* 31*/ { -1, -1, 1, -1, { 0, 0, "" }, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA" "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", 0, 0, 177, -1, "" }, /* 4296 alphanumerics max for ECC 1 (L) */ + /* 32*/ { -1, -1, 4, -1, { 0, 0, "" }, "貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫", 0, -1, 0, -1, "" }, /* 424 Kanji, ECC 4 (Q), version 1 */ + /* 33*/ { -1, -1, 4, -1, { 0, 0, "" }, "貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫貫", ZINT_ERROR_TOO_LONG, -1, 0, -1, "Error 561: Input too long for selected error correction level" }, /* 425 Kanji, ECC 4 (Q), version 1 */ + /* 34*/ { -1, -1, 4, 1, { 0, 0, "" }, "12345678901234567", 0, 0, 21, -1, "" }, + /* 35*/ { -1, -1, 4, 1, { 1, 2, "" }, "12345678901234567", ZINT_ERROR_TOO_LONG, -1, 0, -1, "Error 569: Input too long for selected symbol size" }, + /* 36*/ { -1, -1, 4, 1, { 1, 2, "" }, "123456789012", ZINT_ERROR_TOO_LONG, -1, 0, -1, "Error 569: Input too long for selected symbol size" }, + /* 37*/ { -1, -1, 4, 1, { 1, 2, "" }, "12345678901", 0, 0, 21, -1, "" }, + /* 38*/ { -1, -1, 4, 1, { 3, 16, "123" }, "12345678901", 0, 0, 21, -1, "" }, + /* 39*/ { -1, -1, 4, 1, { 3, 17, "123" }, "12345678901", ZINT_ERROR_INVALID_OPTION, -1, 0, -1, "Error 750: Structured Append count out of range (2-16)" }, + /* 40*/ { -1, -1, 4, 1, { 3, 2, "123" }, "12345678901", ZINT_ERROR_INVALID_OPTION, -1, 0, -1, "Error 751: Structured Append index out of range (1-2)" }, + /* 41*/ { -1, -1, 4, 1, { 1, 2, "256" }, "12345678901", ZINT_ERROR_INVALID_OPTION, -1, 0, -1, "Error 754: Structured Append ID '256' out of range (0-255)" }, + /* 42*/ { GS1_MODE, 3, -1, -1, { 0, 0, "" }, "[20]12", ZINT_WARN_NONCOMPLIANT, 0, 21, -1, "Warning 755: Using ECI in GS1 mode not supported by GS1 standards" }, + /* 43*/ { GS1_MODE, -1, -1, -1, { 1, 2, "" }, "[20]12", ZINT_WARN_NONCOMPLIANT, 0, 21, -1, "Warning 756: Using Structured Append in GS1 mode not supported by GS1 standards" }, + /* 44*/ { GS1_MODE, 3, -1, -1, { 1, 2, "" }, "[20]12", ZINT_WARN_NONCOMPLIANT, 0, 21, -1, "Warning 755: Using ECI in GS1 mode not supported by GS1 standards" }, /* ECI trumps Structured Append */ }; int data_size = ARRAY_SIZE(data); int i, length, ret; @@ -105,13 +111,14 @@ static void test_qr_options(const testCtx *const p_ctx) { symbol = ZBarcode_Create(); assert_nonnull(symbol, "Symbol not created\n"); - length = testUtilSetSymbol(symbol, BARCODE_QRCODE, -1 /*input_mode*/, -1 /*eci*/, data[i].option_1, data[i].option_2, -1, -1 /*output_options*/, data[i].data, -1, debug); + length = testUtilSetSymbol(symbol, BARCODE_QRCODE, data[i].input_mode, data[i].eci, data[i].option_1, data[i].option_2, -1, -1 /*output_options*/, data[i].data, -1, debug); if (data[i].structapp.count) { symbol->structapp = data[i].structapp; } ret = ZBarcode_Encode(symbol, (unsigned char *) data[i].data, length); assert_equal(ret, data[i].ret_encode, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret_encode, symbol->errtxt); + assert_zero(strcmp(symbol->errtxt, data[i].expected), "i:%d strcmp(%s, %s) != 0\n", i, symbol->errtxt, data[i].expected); if (p_ctx->index == -1 && data[i].compare_previous != -1) { ret = testUtilSymbolCmp(symbol, &previous_symbol); assert_equal(!ret, !data[i].compare_previous, "i:%d testUtilSymbolCmp !ret %d != %d\n", i, ret, data[i].compare_previous); @@ -7185,6 +7192,8 @@ static void test_rmqr_options(const testCtx *const p_ctx) { int debug = p_ctx->debug; struct item { + int input_mode; + int eci; int option_1; int option_2; char *data; @@ -7195,75 +7204,76 @@ static void test_rmqr_options(const testCtx *const p_ctx) { }; /* s/\/\*[ 0-9]*\*\//\=printf("\/\*%3d*\/", line(".") - line("'<")): */ struct item data[] = { - /* 0*/ { -1, -1, "12345", 0, 0, 11, 27 }, /* ECC auto-set to H, version auto-set to 11 (R11x27) */ - /* 1*/ { 4, 11, "12345", 0, 0, 11, 27 }, - /* 2*/ { 1, -1, "12345", ZINT_ERROR_INVALID_OPTION, -1, 0, 0 }, /* ECC L not available */ - /* 3*/ { 3, -1, "12345", ZINT_ERROR_INVALID_OPTION, -1, 0, 0 }, /* ECC Q not available */ - /* 4*/ { 4, 11, "123456789", 0, 0, 11, 27 }, /* Max capacity ECC H, version 11, 9 numbers */ - /* 5*/ { 4, 11, "1234567890", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 6*/ { 2, 11, "12345678901234", 0, 0, 11, 27 }, /* Max capacity ECC M, version 11, 14 numbers */ - /* 7*/ { 2, 11, "123456789012345", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 8*/ { 4, 11, "ABCDEF", 0, 0, 11, 27 }, /* Max capacity ECC H, version 11, 6 letters */ - /* 9*/ { 4, 11, "ABCDEFG", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 10*/ { 2, 11, "ABCDEFGH", 0, 0, 11, 27 }, /* Max capacity ECC M, version 11, 8 letters */ - /* 11*/ { 2, 11, "ABCDEFGHI", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 12*/ { 4, 11, "\177\177\177\177", 0, 0, 11, 27 }, /* Max capacity ECC H, version 11, 4 bytes */ - /* 13*/ { 4, 11, "\177\177\177\177\177", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 14*/ { 2, 11, "\177\177\177\177\177\177", 0, 0, 11, 27 }, /* Max capacity ECC M, version 11, 6 bytes */ - /* 15*/ { 2, 11, "\177\177\177\177\177\177\177", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 16*/ { 4, 11, "点茗", ZINT_WARN_NONCOMPLIANT, 0, 11, 27 }, /* Max capacity ECC H, version 11, 2 kanji */ - /* 17*/ { 4, 11, "点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 18*/ { 2, 11, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 11, 27 }, /* Max capacity ECC M, version 11, 3 kanji */ - /* 19*/ { 2, 11, "点茗点茗", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 20*/ { -1, 1, "12345", 0, 0, 7, 43 }, /* ECC auto-set to M, version 1 (R7x43) */ - /* 21*/ { 2, 1, "12345", 0, 0, 7, 43 }, - /* 22*/ { 4, 1, "12345", 0, 0, 7, 43 }, /* Max capacity ECC H, version 1, 5 numbers */ - /* 23*/ { 4, 1, "123456", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 24*/ { 2, 1, "123456789012", 0, 0, 7, 43 }, /* Max capacity ECC M, version 1, 12 numbers */ - /* 25*/ { 2, 1, "1234567890123", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 26*/ { 4, 1, "ABC", 0, 0, 7, 43 }, /* Max capacity ECC H, version 1, 3 letters */ - /* 27*/ { 4, 1, "ABCD", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 28*/ { 2, 1, "ABCDEFG", 0, 0, 7, 43 }, /* Max capacity ECC M, version 1, 7 letters */ - /* 29*/ { 2, 1, "ABCDEFGH", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 30*/ { 4, 1, "\177\177", 0, 0, 7, 43 }, /* Max capacity ECC H, version 1, 2 bytes */ - /* 31*/ { 4, 1, "\177\177\177", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 32*/ { 2, 1, "\177\177\177\177\177", 0, 0, 7, 43 }, /* Max capacity ECC M, version 1, 5 bytes */ - /* 33*/ { 2, 1, "\177\177\177\177\177\177", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 34*/ { 4, 1, "点", ZINT_WARN_NONCOMPLIANT, 0, 7, 43 }, /* Max capacity ECC H, version 1, 1 kanji */ - /* 35*/ { 4, 1, "点茗", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 36*/ { 2, 1, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 7, 43 }, /* Max capacity ECC M, version 1, 3 kanji */ - /* 37*/ { 2, 1, "点茗点茗", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 38*/ { 4, 7, "12345678901234567890123", 0, 0, 9, 59 }, /* Max capacity ECC H, version 7 (R9x59), 23 numbers */ - /* 39*/ { 4, 7, "123456789012345678901234", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 40*/ { 4, 7, "点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 9, 59 }, /* Max capacity ECC H, version 7, 6 kanji */ - /* 41*/ { 4, 7, "点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 42*/ { 4, 13, "点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 11, 59 }, /* Max capacity ECC H, version 13 (R11x59), 8 kanji */ - /* 43*/ { 4, 13, "点茗点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 44*/ { 4, 20, "点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 13, 77 }, /* Max capacity ECC H, version 20 (R13x77), 17 kanji */ - /* 45*/ { 4, 20, "点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 46*/ { 4, 26, "点茗点茗点茗点茗点茗点茗点茗点茗点点茗点茗点茗点点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 15, 99 }, /* Max capacity ECC H, version 26 (R15x99), 28 kanji */ - /* 47*/ { 4, 26, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 48*/ { 4, 32, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 139 }, /* Max capacity ECC H, version 32 (R17x139), 46 kanji */ - /* 49*/ { 4, 32, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 50*/ { -1, 32, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 139 }, /* Max capacity ECC M, version 32, 92 kanji */ - /* 51*/ { 4, 32, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, - /* 52*/ { -1, 33, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 7, 43 }, /* ECC auto-set to M, version 33 (R7xAuto-width) auto-sets R7x43 */ - /* 53*/ { 4, 33, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 7, 59 }, /* ECC set to H, version 33 (R7xAuto-width) auto-sets R7x59 */ - /* 54*/ { -1, 34, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 9, 43 }, /* ECC auto-set to H, version 34 (R9xAuto-width) auto-sets R9x43 */ - /* 55*/ { -1, 35, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 11, 27 }, /* ECC auto-set to M, version 35 (R11xAuto-width) auto-sets R11x27 */ - /* 56*/ { 4, 35, "点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 11, 59 }, /* ECC set to H, version 35 (R11xAuto-width) auto-sets R11x59 */ - /* 57*/ { -1, 35, "点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 11, 43 }, /* ECC auto-set to M, version 35 (R11xAuto-width) auto-sets R11x43 */ - /* 58*/ { -1, 36, "点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 13, 43 }, /* ECC auto-set to M, version 36 (R13xAuto-width) auto-sets R13x43 */ - /* 59*/ { 4, 36, "点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 13, 59 }, /* ECC set to H, version 36 (R13xAuto-width) auto-sets R13x59 */ - /* 60*/ { -1, 37, "点茗点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 15, 43 }, /* ECC auto-set to M, version 37 (R15xAuto-width) auto-sets R15x43 */ - /* 61*/ { 4, 37, "点茗点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 15, 59 }, /* ECC set to H, version 37 (R15xAuto-width) auto-sets R15x59 */ - /* 62*/ { -1, 38, "点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 43 }, /* ECC auto-set to M, version 38 (R17xAuto-width) auto-sets R17x43 */ - /* 63*/ { 4, 38, "点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 77 }, /* ECC set to H, version 38 (R17xAuto-width) auto-sets R17x77 */ - /* 64*/ { -1, 39, "点茗点", ZINT_ERROR_INVALID_OPTION, -1, 0, 0 }, - /* 65*/ { 4, -1, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 13, 27 }, /* ECC set to H, auto-sets R13x27 */ - /* 66*/ { 4, -1, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 15, 99 }, /* ECC set to H, auto-sets R15x99 (max capacity) */ - /* 67*/ { 4, -1, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 17, 99 }, /* ECC set to H, auto-sets R17x99 */ - /* 68*/ { 4, -1, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 139 }, /* ECC set to H, auto-sets R17x139 (max capacity) */ + /* 0*/ { UNICODE_MODE, -1, -1, -1, "12345", 0, 0, 11, 27 }, /* ECC auto-set to H, version auto-set to 11 (R11x27) */ + /* 1*/ { UNICODE_MODE, -1, 4, 11, "12345", 0, 0, 11, 27 }, + /* 2*/ { UNICODE_MODE, -1, 1, -1, "12345", ZINT_ERROR_INVALID_OPTION, -1, 0, 0 }, /* ECC L not available */ + /* 3*/ { UNICODE_MODE, -1, 3, -1, "12345", ZINT_ERROR_INVALID_OPTION, -1, 0, 0 }, /* ECC Q not available */ + /* 4*/ { UNICODE_MODE, -1, 4, 11, "123456789", 0, 0, 11, 27 }, /* Max capacity ECC H, version 11, 9 numbers */ + /* 5*/ { UNICODE_MODE, -1, 4, 11, "1234567890", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 6*/ { UNICODE_MODE, -1, 2, 11, "12345678901234", 0, 0, 11, 27 }, /* Max capacity ECC M, version 11, 14 numbers */ + /* 7*/ { UNICODE_MODE, -1, 2, 11, "123456789012345", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 8*/ { UNICODE_MODE, -1, 4, 11, "ABCDEF", 0, 0, 11, 27 }, /* Max capacity ECC H, version 11, 6 letters */ + /* 9*/ { UNICODE_MODE, -1, 4, 11, "ABCDEFG", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 10*/ { UNICODE_MODE, -1, 2, 11, "ABCDEFGH", 0, 0, 11, 27 }, /* Max capacity ECC M, version 11, 8 letters */ + /* 11*/ { UNICODE_MODE, -1, 2, 11, "ABCDEFGHI", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 12*/ { UNICODE_MODE, -1, 4, 11, "\177\177\177\177", 0, 0, 11, 27 }, /* Max capacity ECC H, version 11, 4 bytes */ + /* 13*/ { UNICODE_MODE, -1, 4, 11, "\177\177\177\177\177", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 14*/ { UNICODE_MODE, -1, 2, 11, "\177\177\177\177\177\177", 0, 0, 11, 27 }, /* Max capacity ECC M, version 11, 6 bytes */ + /* 15*/ { UNICODE_MODE, -1, 2, 11, "\177\177\177\177\177\177\177", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 16*/ { UNICODE_MODE, -1, 4, 11, "点茗", ZINT_WARN_NONCOMPLIANT, 0, 11, 27 }, /* Max capacity ECC H, version 11, 2 kanji */ + /* 17*/ { UNICODE_MODE, -1, 4, 11, "点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 18*/ { UNICODE_MODE, -1, 2, 11, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 11, 27 }, /* Max capacity ECC M, version 11, 3 kanji */ + /* 19*/ { UNICODE_MODE, -1, 2, 11, "点茗点茗", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 20*/ { UNICODE_MODE, -1, -1, 1, "12345", 0, 0, 7, 43 }, /* ECC auto-set to M, version 1 (R7x43) */ + /* 21*/ { UNICODE_MODE, -1, 2, 1, "12345", 0, 0, 7, 43 }, + /* 22*/ { UNICODE_MODE, -1, 4, 1, "12345", 0, 0, 7, 43 }, /* Max capacity ECC H, version 1, 5 numbers */ + /* 23*/ { UNICODE_MODE, -1, 4, 1, "123456", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 24*/ { UNICODE_MODE, -1, 2, 1, "123456789012", 0, 0, 7, 43 }, /* Max capacity ECC M, version 1, 12 numbers */ + /* 25*/ { UNICODE_MODE, -1, 2, 1, "1234567890123", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 26*/ { UNICODE_MODE, -1, 4, 1, "ABC", 0, 0, 7, 43 }, /* Max capacity ECC H, version 1, 3 letters */ + /* 27*/ { UNICODE_MODE, -1, 4, 1, "ABCD", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 28*/ { UNICODE_MODE, -1, 2, 1, "ABCDEFG", 0, 0, 7, 43 }, /* Max capacity ECC M, version 1, 7 letters */ + /* 29*/ { UNICODE_MODE, -1, 2, 1, "ABCDEFGH", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 30*/ { UNICODE_MODE, -1, 4, 1, "\177\177", 0, 0, 7, 43 }, /* Max capacity ECC H, version 1, 2 bytes */ + /* 31*/ { UNICODE_MODE, -1, 4, 1, "\177\177\177", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 32*/ { UNICODE_MODE, -1, 2, 1, "\177\177\177\177\177", 0, 0, 7, 43 }, /* Max capacity ECC M, version 1, 5 bytes */ + /* 33*/ { UNICODE_MODE, -1, 2, 1, "\177\177\177\177\177\177", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 34*/ { UNICODE_MODE, -1, 4, 1, "点", ZINT_WARN_NONCOMPLIANT, 0, 7, 43 }, /* Max capacity ECC H, version 1, 1 kanji */ + /* 35*/ { UNICODE_MODE, -1, 4, 1, "点茗", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 36*/ { UNICODE_MODE, -1, 2, 1, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 7, 43 }, /* Max capacity ECC M, version 1, 3 kanji */ + /* 37*/ { UNICODE_MODE, -1, 2, 1, "点茗点茗", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 38*/ { UNICODE_MODE, -1, 4, 7, "12345678901234567890123", 0, 0, 9, 59 }, /* Max capacity ECC H, version 7 (R9x59), 23 numbers */ + /* 39*/ { UNICODE_MODE, -1, 4, 7, "123456789012345678901234", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 40*/ { UNICODE_MODE, -1, 4, 7, "点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 9, 59 }, /* Max capacity ECC H, version 7, 6 kanji */ + /* 41*/ { UNICODE_MODE, -1, 4, 7, "点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 42*/ { UNICODE_MODE, -1, 4, 13, "点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 11, 59 }, /* Max capacity ECC H, version 13 (R11x59), 8 kanji */ + /* 43*/ { UNICODE_MODE, -1, 4, 13, "点茗点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 44*/ { UNICODE_MODE, -1, 4, 20, "点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 13, 77 }, /* Max capacity ECC H, version 20 (R13x77), 17 kanji */ + /* 45*/ { UNICODE_MODE, -1, 4, 20, "点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 46*/ { UNICODE_MODE, -1, 4, 26, "点茗点茗点茗点茗点茗点茗点茗点茗点点茗点茗点茗点点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 15, 99 }, /* Max capacity ECC H, version 26 (R15x99), 28 kanji */ + /* 47*/ { UNICODE_MODE, -1, 4, 26, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 48*/ { UNICODE_MODE, -1, 4, 32, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 139 }, /* Max capacity ECC H, version 32 (R17x139), 46 kanji */ + /* 49*/ { UNICODE_MODE, -1, 4, 32, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 50*/ { UNICODE_MODE, -1, -1, 32, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 139 }, /* Max capacity ECC M, version 32, 92 kanji */ + /* 51*/ { UNICODE_MODE, -1, 4, 32, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_ERROR_TOO_LONG, -1, 0, 0 }, + /* 52*/ { UNICODE_MODE, -1, -1, 33, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 7, 43 }, /* ECC auto-set to M, version 33 (R7xAuto-width) auto-sets R7x43 */ + /* 53*/ { UNICODE_MODE, -1, 4, 33, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 7, 59 }, /* ECC set to H, version 33 (R7xAuto-width) auto-sets R7x59 */ + /* 54*/ { UNICODE_MODE, -1, -1, 34, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 9, 43 }, /* ECC auto-set to H, version 34 (R9xAuto-width) auto-sets R9x43 */ + /* 55*/ { UNICODE_MODE, -1, -1, 35, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 11, 27 }, /* ECC auto-set to M, version 35 (R11xAuto-width) auto-sets R11x27 */ + /* 56*/ { UNICODE_MODE, -1, 4, 35, "点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 11, 59 }, /* ECC set to H, version 35 (R11xAuto-width) auto-sets R11x59 */ + /* 57*/ { UNICODE_MODE, -1, -1, 35, "点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 11, 43 }, /* ECC auto-set to M, version 35 (R11xAuto-width) auto-sets R11x43 */ + /* 58*/ { UNICODE_MODE, -1, -1, 36, "点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 13, 43 }, /* ECC auto-set to M, version 36 (R13xAuto-width) auto-sets R13x43 */ + /* 59*/ { UNICODE_MODE, -1, 4, 36, "点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 13, 59 }, /* ECC set to H, version 36 (R13xAuto-width) auto-sets R13x59 */ + /* 60*/ { UNICODE_MODE, -1, -1, 37, "点茗点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 15, 43 }, /* ECC auto-set to M, version 37 (R15xAuto-width) auto-sets R15x43 */ + /* 61*/ { UNICODE_MODE, -1, 4, 37, "点茗点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 15, 59 }, /* ECC set to H, version 37 (R15xAuto-width) auto-sets R15x59 */ + /* 62*/ { UNICODE_MODE, -1, -1, 38, "点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 43 }, /* ECC auto-set to M, version 38 (R17xAuto-width) auto-sets R17x43 */ + /* 63*/ { UNICODE_MODE, -1, 4, 38, "点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 77 }, /* ECC set to H, version 38 (R17xAuto-width) auto-sets R17x77 */ + /* 64*/ { UNICODE_MODE, -1, -1, 39, "点茗点", ZINT_ERROR_INVALID_OPTION, -1, 0, 0 }, + /* 65*/ { UNICODE_MODE, -1, 4, -1, "点茗点", ZINT_WARN_NONCOMPLIANT, 0, 13, 27 }, /* ECC set to H, auto-sets R13x27 */ + /* 66*/ { UNICODE_MODE, -1, 4, -1, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 15, 99 }, /* ECC set to H, auto-sets R15x99 (max capacity) */ + /* 67*/ { UNICODE_MODE, -1, 4, -1, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点", ZINT_WARN_NONCOMPLIANT, 0, 17, 99 }, /* ECC set to H, auto-sets R17x99 */ + /* 68*/ { UNICODE_MODE, -1, 4, -1, "点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗点茗", ZINT_WARN_NONCOMPLIANT, 0, 17, 139 }, /* ECC set to H, auto-sets R17x139 (max capacity) */ + /* 69*/ { GS1_MODE, 3, -1, -1, "[20]12", ZINT_WARN_NONCOMPLIANT, 0, 11, 27 }, }; int data_size = ARRAY_SIZE(data); int i, length, ret; @@ -7278,7 +7288,7 @@ static void test_rmqr_options(const testCtx *const p_ctx) { symbol = ZBarcode_Create(); assert_nonnull(symbol, "Symbol not created\n"); - length = testUtilSetSymbol(symbol, BARCODE_RMQR, UNICODE_MODE, -1 /*eci*/, data[i].option_1, data[i].option_2, -1, -1 /*output_options*/, data[i].data, -1, debug); + length = testUtilSetSymbol(symbol, BARCODE_RMQR, data[i].input_mode, data[i].eci, data[i].option_1, data[i].option_2, -1, -1 /*output_options*/, data[i].data, -1, debug); ret = ZBarcode_Encode(symbol, (unsigned char *) data[i].data, length); assert_equal(ret, data[i].ret_encode, "i:%d ZBarcode_Encode ret %d != %d (%s)\n", i, ret, data[i].ret_encode, symbol->errtxt); diff --git a/docs/README b/docs/README index 0b5bd6c8..63699a55 100644 --- a/docs/README +++ b/docs/README @@ -2,8 +2,8 @@ For generation of "docs/manual.pdf" and "docs/manual.txt" from "manual.pmd" usin On Ubuntu/Debian (tested on Ubuntu 22.04) - wget https://github.com/jgm/pandoc/releases/download/2.18/pandoc-2.18-1-amd64.deb - sudo dpkg -i pandoc-2.18-1-amd64.deb + wget https://github.com/jgm/pandoc/releases/download/2.19.2/pandoc-2.19.2-1-amd64.deb + sudo dpkg -i pandoc-2.19.2-1-amd64.deb sudo apt install python3-pip pip install pandoc-tablenos --user export PATH=~/.local/bin:"$PATH" @@ -15,9 +15,9 @@ On Ubuntu/Debian (tested on Ubuntu 22.04) On Fedora (tested on Fedora Linux 36 (Workstation Edition)) - wget https://github.com/jgm/pandoc/releases/download/2.18/pandoc-2.18-linux-amd64.tar.gz - tar xf pandoc-2.18-linux-amd64.tar.gz - sudo mv -i pandoc-2.18/bin/pandoc /usr/local/bin + wget https://github.com/jgm/pandoc/releases/download/2.19.2/pandoc-2.19.2-linux-amd64.tar.gz + tar xf pandoc-2.19.2-linux-amd64.tar.gz + sudo mv -i pandoc-2.19.2/bin/pandoc /usr/local/bin sudo dnf install python3-pip pip install pandoc-tablenos --user export PATH=~/.local/bin:"$PATH" diff --git a/docs/images/auspost.svg b/docs/images/auspost.svg index 5b5af1df..24a0ab6f 100644 --- a/docs/images/auspost.svg +++ b/docs/images/auspost.svg @@ -1,49 +1,49 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/ausredirect.svg b/docs/images/ausredirect.svg index a1667561..a9744300 100644 --- a/docs/images/ausredirect.svg +++ b/docs/images/ausredirect.svg @@ -1,49 +1,49 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/ausreply.svg b/docs/images/ausreply.svg index 90db861c..1a27f620 100644 --- a/docs/images/ausreply.svg +++ b/docs/images/ausreply.svg @@ -1,49 +1,49 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/ausroute.svg b/docs/images/ausroute.svg index 5fb57372..8d1fc533 100644 --- a/docs/images/ausroute.svg +++ b/docs/images/ausroute.svg @@ -1,49 +1,49 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/azrune.svg b/docs/images/azrune.svg index eae25a28..19c50bad 100644 --- a/docs/images/azrune.svg +++ b/docs/images/azrune.svg @@ -1,32 +1,32 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/aztec.svg b/docs/images/aztec.svg index 5d79d96f..b33cb74d 100644 --- a/docs/images/aztec.svg +++ b/docs/images/aztec.svg @@ -1,58 +1,58 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/aztec_segs.svg b/docs/images/aztec_segs.svg index 48b67282..c8f35e0d 100644 --- a/docs/images/aztec_segs.svg +++ b/docs/images/aztec_segs.svg @@ -1,125 +1,125 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/bc412.svg b/docs/images/bc412.svg index 440d1a8e..f8aae4e9 100644 --- a/docs/images/bc412.svg +++ b/docs/images/bc412.svg @@ -1,50 +1,50 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + AQQ45670 diff --git a/docs/images/c25iata.svg b/docs/images/c25iata.svg index 51668977..76e3b041 100644 --- a/docs/images/c25iata.svg +++ b/docs/images/c25iata.svg @@ -1,69 +1,69 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 9212320967 diff --git a/docs/images/c25ind.svg b/docs/images/c25ind.svg index c53380a0..407238c2 100644 --- a/docs/images/c25ind.svg +++ b/docs/images/c25ind.svg @@ -1,71 +1,71 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 9212320967 diff --git a/docs/images/c25inter.svg b/docs/images/c25inter.svg index 6b88e20d..825b1396 100644 --- a/docs/images/c25inter.svg +++ b/docs/images/c25inter.svg @@ -1,44 +1,44 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 9212320967 diff --git a/docs/images/c25logic.svg b/docs/images/c25logic.svg index d9159821..06c60188 100644 --- a/docs/images/c25logic.svg +++ b/docs/images/c25logic.svg @@ -1,49 +1,49 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 9212320967 diff --git a/docs/images/c25standard.svg b/docs/images/c25standard.svg index 51a41031..d051ab0e 100644 --- a/docs/images/c25standard.svg +++ b/docs/images/c25standard.svg @@ -1,51 +1,51 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 9212320967 diff --git a/docs/images/cepnet.svg b/docs/images/cepnet.svg index 7b3036ea..c0309ead 100644 --- a/docs/images/cepnet.svg +++ b/docs/images/cepnet.svg @@ -1,59 +1,59 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/channel.svg b/docs/images/channel.svg index 9427768f..51bf8693 100644 --- a/docs/images/channel.svg +++ b/docs/images/channel.svg @@ -1,27 +1,27 @@ - Zint Generated Symbol - - - - - - - - - - - - - - + + + + + + + + + + + + + + 453678 diff --git a/docs/images/codabar.svg b/docs/images/codabar.svg index 7e99db56..b445f146 100644 --- a/docs/images/codabar.svg +++ b/docs/images/codabar.svg @@ -1,43 +1,43 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A37859B diff --git a/docs/images/codablockf.svg b/docs/images/codablockf.svg index a302a3fa..b5ef6701 100644 --- a/docs/images/codablockf.svg +++ b/docs/images/codablockf.svg @@ -1,122 +1,122 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/code11.svg b/docs/images/code11.svg index 24c29f58..09187d34 100644 --- a/docs/images/code11.svg +++ b/docs/images/code11.svg @@ -1,57 +1,57 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 921232096769 diff --git a/docs/images/code128.svg b/docs/images/code128.svg index fc2d9a71..c63c4a06 100644 --- a/docs/images/code128.svg +++ b/docs/images/code128.svg @@ -1,49 +1,49 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 130170X178 diff --git a/docs/images/code128_box.svg b/docs/images/code128_box.svg index c42ebb67..79e053af 100644 --- a/docs/images/code128_box.svg +++ b/docs/images/code128_box.svg @@ -1,56 +1,56 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This Text diff --git a/docs/images/code128_green.svg b/docs/images/code128_green.svg index 53e1fbda..42af4166 100644 --- a/docs/images/code128_green.svg +++ b/docs/images/code128_green.svg @@ -1,52 +1,52 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This Text diff --git a/docs/images/code128_green_alpha.svg b/docs/images/code128_green_alpha.svg index 1ef3c5f1..f6309f39 100644 --- a/docs/images/code128_green_alpha.svg +++ b/docs/images/code128_green_alpha.svg @@ -1,52 +1,52 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This Text diff --git a/docs/images/code128_rotate90.svg b/docs/images/code128_rotate90.svg index 5681f9ab..00617992 100644 --- a/docs/images/code128_rotate90.svg +++ b/docs/images/code128_rotate90.svg @@ -1,52 +1,52 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This Text diff --git a/docs/images/code128_small_bold.svg b/docs/images/code128_small_bold.svg index 1ef0243d..8679db53 100644 --- a/docs/images/code128_small_bold.svg +++ b/docs/images/code128_small_bold.svg @@ -1,52 +1,52 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This Text diff --git a/docs/images/code128_stacked.svg b/docs/images/code128_stacked.svg index f82ca4e7..7438924b 100644 --- a/docs/images/code128_stacked.svg +++ b/docs/images/code128_stacked.svg @@ -1,41 +1,41 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + That diff --git a/docs/images/code128_stacked_sep2.svg b/docs/images/code128_stacked_sep2.svg index 7c01ef03..3677e774 100644 --- a/docs/images/code128_stacked_sep2.svg +++ b/docs/images/code128_stacked_sep2.svg @@ -1,39 +1,57 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/code128b.svg b/docs/images/code128b.svg index 11f48a90..5c08c387 100644 --- a/docs/images/code128b.svg +++ b/docs/images/code128b.svg @@ -1,55 +1,55 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 130170X178 diff --git a/docs/images/code16k.svg b/docs/images/code16k.svg index c86e81f6..fba74a78 100644 --- a/docs/images/code16k.svg +++ b/docs/images/code16k.svg @@ -1,55 +1,55 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/code32.svg b/docs/images/code32.svg index 996447bb..1d992dc5 100644 --- a/docs/images/code32.svg +++ b/docs/images/code32.svg @@ -1,55 +1,55 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A143523126 diff --git a/docs/images/code39.svg b/docs/images/code39.svg index 60d4cf4a..40ce608b 100644 --- a/docs/images/code39.svg +++ b/docs/images/code39.svg @@ -1,40 +1,40 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + *1AB* diff --git a/docs/images/code49.svg b/docs/images/code49.svg index bfdabac8..625e2aa4 100644 --- a/docs/images/code49.svg +++ b/docs/images/code49.svg @@ -1,108 +1,108 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/code93.svg b/docs/images/code93.svg index 2dcf5582..a70637c9 100644 --- a/docs/images/code93.svg +++ b/docs/images/code93.svg @@ -1,37 +1,37 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + C93 diff --git a/docs/images/codeone.svg b/docs/images/codeone.svg index 5c1bff6b..10c43251 100644 --- a/docs/images/codeone.svg +++ b/docs/images/codeone.svg @@ -1,59 +1,59 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/codeone_s_dotty.svg b/docs/images/codeone_s_dotty.svg index 211f5f52..b2744573 100644 --- a/docs/images/codeone_s_dotty.svg +++ b/docs/images/codeone_s_dotty.svg @@ -1,139 +1,139 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/daft_rm4scc.svg b/docs/images/daft_rm4scc.svg index 4ca91272..08ae7809 100644 --- a/docs/images/daft_rm4scc.svg +++ b/docs/images/daft_rm4scc.svg @@ -1,50 +1,50 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/datamatrix_big5.svg b/docs/images/datamatrix_big5.svg index ba670a1e..31063c74 100644 --- a/docs/images/datamatrix_big5.svg +++ b/docs/images/datamatrix_big5.svg @@ -1,52 +1,52 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/datamatrix_euro.svg b/docs/images/datamatrix_euro.svg index b7fd88dc..f6b10fb7 100644 --- a/docs/images/datamatrix_euro.svg +++ b/docs/images/datamatrix_euro.svg @@ -1,52 +1,52 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/datamatrix_structapp.svg b/docs/images/datamatrix_structapp.svg index c4bffd3b..512dd6c3 100644 --- a/docs/images/datamatrix_structapp.svg +++ b/docs/images/datamatrix_structapp.svg @@ -1,76 +1,76 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/dbar_exp.svg b/docs/images/dbar_exp.svg index d4d8687b..b5bbe347 100644 --- a/docs/images/dbar_exp.svg +++ b/docs/images/dbar_exp.svg @@ -1,59 +1,59 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (01)98898765432106(3202)012345(15)991231 diff --git a/docs/images/dbar_expstk.svg b/docs/images/dbar_expstk.svg index ec8bce87..616f1c69 100644 --- a/docs/images/dbar_expstk.svg +++ b/docs/images/dbar_expstk.svg @@ -1,137 +1,137 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/dbar_ltd.svg b/docs/images/dbar_ltd.svg index faa04ea9..edd3ffbf 100644 --- a/docs/images/dbar_ltd.svg +++ b/docs/images/dbar_ltd.svg @@ -1,38 +1,38 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + (01)09501101530010 diff --git a/docs/images/dbar_omn.svg b/docs/images/dbar_omn.svg index dab901e7..34ed0acc 100644 --- a/docs/images/dbar_omn.svg +++ b/docs/images/dbar_omn.svg @@ -1,38 +1,38 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + (01)09501101530010 diff --git a/docs/images/dbar_omnstk.svg b/docs/images/dbar_omnstk.svg index 8b0b30c6..cf310577 100644 --- a/docs/images/dbar_omnstk.svg +++ b/docs/images/dbar_omnstk.svg @@ -1,75 +1,75 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/dbar_stk.svg b/docs/images/dbar_stk.svg index f863572a..27e97e49 100644 --- a/docs/images/dbar_stk.svg +++ b/docs/images/dbar_stk.svg @@ -1,53 +1,53 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/dbar_truncated.svg b/docs/images/dbar_truncated.svg index 810a08c4..a05b1dcc 100644 --- a/docs/images/dbar_truncated.svg +++ b/docs/images/dbar_truncated.svg @@ -1,38 +1,38 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + (01)09501101530010 diff --git a/docs/images/dotcode.svg b/docs/images/dotcode.svg index 5ba34a2d..8ce11fc1 100644 --- a/docs/images/dotcode.svg +++ b/docs/images/dotcode.svg @@ -1,177 +1,177 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/dpd.svg b/docs/images/dpd.svg index d31dcd53..ce05e3aa 100644 --- a/docs/images/dpd.svg +++ b/docs/images/dpd.svg @@ -1,73 +1,73 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0003 932 0621 9912 3456 78 101 040 9 diff --git a/docs/images/dpident.svg b/docs/images/dpident.svg index cac75f1c..6f75fd66 100644 --- a/docs/images/dpident.svg +++ b/docs/images/dpident.svg @@ -1,49 +1,49 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 912320967127 diff --git a/docs/images/dpleit.svg b/docs/images/dpleit.svg index 5a29691a..dae8802c 100644 --- a/docs/images/dpleit.svg +++ b/docs/images/dpleit.svg @@ -1,54 +1,54 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 92123209671456 diff --git a/docs/images/ean14.svg b/docs/images/ean14.svg index 46e55381..ca810b9c 100644 --- a/docs/images/ean14.svg +++ b/docs/images/ean14.svg @@ -1,52 +1,52 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (01)98898765432106 diff --git a/docs/images/eanx13.svg b/docs/images/eanx13.svg index b47cff6d..46d470e5 100644 --- a/docs/images/eanx13.svg +++ b/docs/images/eanx13.svg @@ -1,53 +1,53 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 4 - + 512345 - + 678906 diff --git a/docs/images/eanx5.svg b/docs/images/eanx5.svg index f1925131..887d69fa 100644 --- a/docs/images/eanx5.svg +++ b/docs/images/eanx5.svg @@ -1,31 +1,31 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + 54321 diff --git a/docs/images/eanx8_5.svg b/docs/images/eanx8_5.svg index 7457ae0a..0c342c73 100644 --- a/docs/images/eanx8_5.svg +++ b/docs/images/eanx8_5.svg @@ -1,61 +1,61 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 7432 - + 3654 - + 54321 diff --git a/docs/images/eanx_cc_a.svg b/docs/images/eanx_cc_a.svg index 9f610fc1..cc9a9bed 100644 --- a/docs/images/eanx_cc_a.svg +++ b/docs/images/eanx_cc_a.svg @@ -1,118 +1,118 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 3 - + 312345 - + 678903 diff --git a/docs/images/eanx_cc_b.svg b/docs/images/eanx_cc_b.svg index 654ea9fd..4b37d503 100644 --- a/docs/images/eanx_cc_b.svg +++ b/docs/images/eanx_cc_b.svg @@ -1,167 +1,167 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 3 - + 312345 - + 678903 diff --git a/docs/images/excode39.svg b/docs/images/excode39.svg index c9dc5bc7..4021ea29 100644 --- a/docs/images/excode39.svg +++ b/docs/images/excode39.svg @@ -1,75 +1,75 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 123.45fd diff --git a/docs/images/fim.svg b/docs/images/fim.svg index d12f56b3..999f41b2 100644 --- a/docs/images/fim.svg +++ b/docs/images/fim.svg @@ -1,18 +1,18 @@ - Zint Generated Symbol - - - - - - - + + + + + + + diff --git a/docs/images/flat.svg b/docs/images/flat.svg index 51dc4d8a..1953f8a8 100644 --- a/docs/images/flat.svg +++ b/docs/images/flat.svg @@ -1,17 +1,17 @@ - Zint Generated Symbol - - - - - - + + + + + + diff --git a/docs/images/gridmatrix.svg b/docs/images/gridmatrix.svg index 529773e1..cae90115 100644 --- a/docs/images/gridmatrix.svg +++ b/docs/images/gridmatrix.svg @@ -1,498 +1,498 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/gs1_128.svg b/docs/images/gs1_128.svg index 70aee55f..cfe308aa 100644 --- a/docs/images/gs1_128.svg +++ b/docs/images/gs1_128.svg @@ -1,79 +1,79 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (01)98898765432106(3202)012345(15)991231 diff --git a/docs/images/gs1_128_cc_c.svg b/docs/images/gs1_128_cc_c.svg index 4a306137..2de251e5 100644 --- a/docs/images/gs1_128_cc_c.svg +++ b/docs/images/gs1_128_cc_c.svg @@ -1,206 +1,206 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (01)03312345678903 diff --git a/docs/images/hanxin.svg b/docs/images/hanxin.svg index 0f6428ef..dfc5b22b 100644 --- a/docs/images/hanxin.svg +++ b/docs/images/hanxin.svg @@ -1,105 +1,105 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/hibc_128.svg b/docs/images/hibc_128.svg index d5ecbd4d..bea29626 100644 --- a/docs/images/hibc_128.svg +++ b/docs/images/hibc_128.svg @@ -1,70 +1,70 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + *+A123BJC5D6E71G* diff --git a/docs/images/hibc_39.svg b/docs/images/hibc_39.svg index eaa1060e..f58c17b1 100644 --- a/docs/images/hibc_39.svg +++ b/docs/images/hibc_39.svg @@ -1,75 +1,75 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + *+14352312J* diff --git a/docs/images/hibc_dm.svg b/docs/images/hibc_dm.svg index 1468d864..ed82a6e9 100644 --- a/docs/images/hibc_dm.svg +++ b/docs/images/hibc_dm.svg @@ -1,106 +1,106 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/isbnx.svg b/docs/images/isbnx.svg index 0ae14b04..bb498a6e 100644 --- a/docs/images/isbnx.svg +++ b/docs/images/isbnx.svg @@ -1,53 +1,53 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 9 - + 789295 - + 055124 diff --git a/docs/images/itf14.svg b/docs/images/itf14.svg index 739e20c6..ed2de626 100644 --- a/docs/images/itf14.svg +++ b/docs/images/itf14.svg @@ -1,58 +1,58 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 92123209671459 diff --git a/docs/images/itf14_border0.svg b/docs/images/itf14_border0.svg index 18a58a10..260e19a8 100644 --- a/docs/images/itf14_border0.svg +++ b/docs/images/itf14_border0.svg @@ -1,54 +1,54 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 92123209671459 diff --git a/docs/images/japanpost.svg b/docs/images/japanpost.svg index d0f93273..a8a412d0 100644 --- a/docs/images/japanpost.svg +++ b/docs/images/japanpost.svg @@ -1,79 +1,79 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/kix.svg b/docs/images/kix.svg index dbf70630..41dfd4f2 100644 --- a/docs/images/kix.svg +++ b/docs/images/kix.svg @@ -1,56 +1,56 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/koreapost.svg b/docs/images/koreapost.svg index fac663d8..443fd370 100644 --- a/docs/images/koreapost.svg +++ b/docs/images/koreapost.svg @@ -1,43 +1,43 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 9234570 diff --git a/docs/images/logmars.svg b/docs/images/logmars.svg index c4503afc..edd33616 100644 --- a/docs/images/logmars.svg +++ b/docs/images/logmars.svg @@ -1,85 +1,85 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 12345/ABCDET diff --git a/docs/images/mailmark.svg b/docs/images/mailmark.svg index f06d89be..2afcdc54 100644 --- a/docs/images/mailmark.svg +++ b/docs/images/mailmark.svg @@ -1,78 +1,78 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/maxicode.svg b/docs/images/maxicode.svg index 88448c7e..eedef1d7 100644 --- a/docs/images/maxicode.svg +++ b/docs/images/maxicode.svg @@ -1,451 +1,451 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/micropdf417.svg b/docs/images/micropdf417.svg index 7ec983a6..3c5933d2 100644 --- a/docs/images/micropdf417.svg +++ b/docs/images/micropdf417.svg @@ -1,80 +1,80 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/microqr.svg b/docs/images/microqr.svg index 38136443..a17851c9 100644 --- a/docs/images/microqr.svg +++ b/docs/images/microqr.svg @@ -1,43 +1,43 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/msi_plessey.svg b/docs/images/msi_plessey.svg index 2b639ecc..d83dfa03 100644 --- a/docs/images/msi_plessey.svg +++ b/docs/images/msi_plessey.svg @@ -1,42 +1,42 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 650291 diff --git a/docs/images/nve18.svg b/docs/images/nve18.svg index a6d4fd36..8fc1c858 100644 --- a/docs/images/nve18.svg +++ b/docs/images/nve18.svg @@ -1,58 +1,58 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + (00)376123450000010039 diff --git a/docs/images/pdf417.svg b/docs/images/pdf417.svg index 20d2d62e..918325af 100644 --- a/docs/images/pdf417.svg +++ b/docs/images/pdf417.svg @@ -1,113 +1,113 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/pdf417_heightperrow.svg b/docs/images/pdf417_heightperrow.svg index dc49b3d0..717db517 100644 --- a/docs/images/pdf417_heightperrow.svg +++ b/docs/images/pdf417_heightperrow.svg @@ -1,140 +1,140 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/pdf417comp.svg b/docs/images/pdf417comp.svg index 039c6292..e589a911 100644 --- a/docs/images/pdf417comp.svg +++ b/docs/images/pdf417comp.svg @@ -1,87 +1,87 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/pharma.svg b/docs/images/pharma.svg index 316f461c..de99bd68 100644 --- a/docs/images/pharma.svg +++ b/docs/images/pharma.svg @@ -1,28 +1,28 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/docs/images/pharma_two.svg b/docs/images/pharma_two.svg index 67003b84..a6c0c701 100644 --- a/docs/images/pharma_two.svg +++ b/docs/images/pharma_two.svg @@ -1,28 +1,28 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/docs/images/planet.svg b/docs/images/planet.svg index 904f4615..3ea3367e 100644 --- a/docs/images/planet.svg +++ b/docs/images/planet.svg @@ -1,84 +1,84 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/plessey.svg b/docs/images/plessey.svg index ed15115c..4c640ed8 100644 --- a/docs/images/plessey.svg +++ b/docs/images/plessey.svg @@ -1,44 +1,44 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + C64 diff --git a/docs/images/postnet.svg b/docs/images/postnet.svg index 145b59aa..11792403 100644 --- a/docs/images/postnet.svg +++ b/docs/images/postnet.svg @@ -1,74 +1,74 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/pzn.svg b/docs/images/pzn.svg index e9b127e2..3e8416bf 100644 --- a/docs/images/pzn.svg +++ b/docs/images/pzn.svg @@ -1,70 +1,70 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + PZN -27580899 diff --git a/docs/images/qrcode.svg b/docs/images/qrcode.svg index 0b516b88..4a87e54d 100644 --- a/docs/images/qrcode.svg +++ b/docs/images/qrcode.svg @@ -1,83 +1,83 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/qrcode_binary_utf8.svg b/docs/images/qrcode_binary_utf8.svg index 5177ffff..27b3088e 100644 --- a/docs/images/qrcode_binary_utf8.svg +++ b/docs/images/qrcode_binary_utf8.svg @@ -1,93 +1,93 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/qrcode_box.svg b/docs/images/qrcode_box.svg index a0ada253..4bffce0c 100644 --- a/docs/images/qrcode_box.svg +++ b/docs/images/qrcode_box.svg @@ -1,97 +1,97 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/rm4scc.svg b/docs/images/rm4scc.svg index 05fe5512..e0060ec1 100644 --- a/docs/images/rm4scc.svg +++ b/docs/images/rm4scc.svg @@ -1,50 +1,50 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/rmqr.svg b/docs/images/rmqr.svg index a52c5043..cd27822e 100644 --- a/docs/images/rmqr.svg +++ b/docs/images/rmqr.svg @@ -1,79 +1,79 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/telepen.svg b/docs/images/telepen.svg index 10501ee9..c8d8ad3a 100644 --- a/docs/images/telepen.svg +++ b/docs/images/telepen.svg @@ -1,47 +1,47 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Z80 diff --git a/docs/images/telepen_num.svg b/docs/images/telepen_num.svg index 369449d7..f0885beb 100644 --- a/docs/images/telepen_num.svg +++ b/docs/images/telepen_num.svg @@ -1,49 +1,49 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 466X33 diff --git a/docs/images/ultra.svg b/docs/images/ultra.svg index c6fd1210..7756368a 100644 --- a/docs/images/ultra.svg +++ b/docs/images/ultra.svg @@ -1,282 +1,282 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/upca.svg b/docs/images/upca.svg index 7858819f..bc7010f4 100644 --- a/docs/images/upca.svg +++ b/docs/images/upca.svg @@ -1,57 +1,57 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 7 - + 25272 - + 70270 - + 3 diff --git a/docs/images/upca_5.svg b/docs/images/upca_5.svg index 9c5d4fc2..92a2f9ab 100644 --- a/docs/images/upca_5.svg +++ b/docs/images/upca_5.svg @@ -1,77 +1,77 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 7 - + 25272 - + 70270 - + 3 - + 12345 diff --git a/docs/images/upce.svg b/docs/images/upce.svg index c7789bfe..77d077ff 100644 --- a/docs/images/upce.svg +++ b/docs/images/upce.svg @@ -1,40 +1,40 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + 1 - + 123456 - + 2 diff --git a/docs/images/upnqr.svg b/docs/images/upnqr.svg index 3b9d46d0..ebd28dd4 100644 --- a/docs/images/upnqr.svg +++ b/docs/images/upnqr.svg @@ -1,1574 +1,1574 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/usps_imail.svg b/docs/images/usps_imail.svg index f413c2e7..f35e5e77 100644 --- a/docs/images/usps_imail.svg +++ b/docs/images/usps_imail.svg @@ -1,77 +1,77 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/images/vin.svg b/docs/images/vin.svg index cc53f531..9dfa5d70 100644 --- a/docs/images/vin.svg +++ b/docs/images/vin.svg @@ -1,115 +1,115 @@ - Zint Generated Symbol - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2FTPX28L0XCA15511 diff --git a/docs/manual.pmd b/docs/manual.pmd index 796b3cda..129407b5 100644 --- a/docs/manual.pmd +++ b/docs/manual.pmd @@ -2493,7 +2493,7 @@ A-F up to a maximum of 65 characters and includes a CRC check digit. ![`zint -b MSI_PLESSEY -d "6502" --vers=2`](images/msi_plessey.svg) -Based on Plessey and developed by MSE Data Corporation, MSI Plessey has a range +Based on Plessey and developed by MSI Data Corporation, MSI Plessey has a range of check digit options that are selectable by setting `--vers` (API `option_2`). Numeric (digits 0-9) input can be encoded, up to a maximum of 65 digits. The table below shows the options available: @@ -2522,7 +2522,7 @@ hidden modulo-10 check digits. Telepen Alpha was developed by SB Electronic Systems Limited and can encode ASCII text input, up to a maximum of 30 characters. Telepen includes a -modulo-127 check digit. +modulo-127 check digit, added by Zint. #### 6.1.6.2 Telepen Numeric @@ -2545,7 +2545,7 @@ Standard Code 39 was developed in 1974 by Intermec. Input data can be up to 85 characters in length and can include the characters 0-9, A-Z, dash (`-`), full stop (`.`), space, asterisk (`*`), dollar (`$`), slash (`/`), plus (`+`) and percent (`%`). The standard does not require a check digit but a modulo-43 check -digit can be added if required by setting `--vers=1` (API `option_2 = 1`). +digit can be added if desired by setting `--vers=1` (API `option_2 = 1`). #### 6.1.7.2 Extended Code 39 @@ -2553,8 +2553,8 @@ digit can be added if required by setting `--vers=1` (API `option_2 = 1`). Also known as Code 39e and Code39+, this symbology expands on Standard Code 39 to provide support for the full 7-bit ASCII character set. The standard does not -require a check digit but a modulo-43 check digit can be added if required by -setting `--vers=1` (API `option_2 = 1`). +require a check digit but a modulo-43 check digit can be added by setting +`--vers=1` (API `option_2 = 1`). #### 6.1.7.3 Code 93 @@ -2805,7 +2805,7 @@ the table below: | 7 | 000000 | 576688 | 8 | 0000000 | 7742862 -Table: {#tbl:channel_maxima tag=": Channel Maximum Values"} +Table: {#tbl:channel_maxima tag=": Channel Value Ranges"} ### 6.1.14 BC412 (SEMI T1-95) diff --git a/docs/manual.txt b/docs/manual.txt index bc40c90d..77b267c7 100644 --- a/docs/manual.txt +++ b/docs/manual.txt @@ -2470,7 +2470,7 @@ A-F up to a maximum of 65 characters and includes a CRC check digit. [zint -b MSI_PLESSEY -d "6502" --vers=2] -Based on Plessey and developed by MSE Data Corporation, MSI Plessey has a range +Based on Plessey and developed by MSI Data Corporation, MSI Plessey has a range of check digit options that are selectable by setting --vers (API option_2). Numeric (digits 0-9) input can be encoded, up to a maximum of 65 digits. The table below shows the options available: @@ -2499,7 +2499,7 @@ modulo-10 check digits. Telepen Alpha was developed by SB Electronic Systems Limited and can encode ASCII text input, up to a maximum of 30 characters. Telepen includes a -modulo-127 check digit. +modulo-127 check digit, added by Zint. 6.1.6.2 Telepen Numeric @@ -2522,7 +2522,7 @@ Standard Code 39 was developed in 1974 by Intermec. Input data can be up to 85 characters in length and can include the characters 0-9, A-Z, dash (-), full stop (.), space, asterisk (*), dollar ($), slash (/), plus (+) and percent (%). The standard does not require a check digit but a modulo-43 check digit can be -added if required by setting --vers=1 (API option_2 = 1). +added if desired by setting --vers=1 (API option_2 = 1). 6.1.7.2 Extended Code 39 @@ -2530,8 +2530,8 @@ added if required by setting --vers=1 (API option_2 = 1). Also known as Code 39e and Code39+, this symbology expands on Standard Code 39 to provide support for the full 7-bit ASCII character set. The standard does not -require a check digit but a modulo-43 check digit can be added if required by -setting --vers=1 (API option_2 = 1). +require a check digit but a modulo-43 check digit can be added by setting +--vers=1 (API option_2 = 1). 6.1.7.3 Code 93 @@ -2769,7 +2769,7 @@ the table below: 7 000000 576688 8 0000000 7742862 - : Table : Channel Maximum Values: + : Table : Channel Value Ranges: 6.1.14 BC412 (SEMI T1-95) diff --git a/docs/zint_images.sh b/docs/zint_images.sh index 563231d1..ca787bab 100755 --- a/docs/zint_images.sh +++ b/docs/zint_images.sh @@ -1,103 +1,124 @@ #!/bin/bash +# Copyright (C) 2022 +# +# Generate the barcode .svg images for manual.pdf (via manual.pmd) -zint -b PDF417 -d "This Text" --height=4 --heightperrow --scale=0.6 -o images/pdf417_heightperrow.svg -zint --border=10 --box -d "This Text" -w 10 --scale=0.6 -o images/code128_box.svg -zint -b QRCODE --border=1 --box -d "This Text" --quietzones --scale=1 -o images/qrcode_box.svg -zint -d "This Text" --fg=00FF00 --scale=0.6 -o images/code128_green.svg -zint -d "This Text" --fg=00FF0055 --scale=0.6 -o images/code128_green_alpha.svg -zint -d "This Text" --rotate=90 --scale=0.6 -o images/code128_rotate90.svg -zint -b DATAMATRIX --eci=17 -d "€" --scale=1 -o images/datamatrix_euro.svg -zint -b DATAMATRIX --eci=28 -d "\u5E38" --esc --scale=1 -o images/datamatrix_big5.svg -zint -b QRCODE --binary -d "\xE2\x82\xAC\xE5\xB8\xB8" --esc --scale=1 -o images/qrcode_binary_utf8.svg -zint -b CODEONE -d "123456789012345678" --dotty --vers=9 --scale=2 -o images/codeone_s_dotty.svg -zint -b AZTEC --eci=9 -d "Κείμενο" --seg1=7,"Текст" --seg2=20,"文章" --scale=1 -o images/aztec_segs.svg -zint -b DATAMATRIX -d "2nd of 3" --structapp="2,3,5006" --scale=1 -o images/datamatrix_structapp.svg -zint --bold -d "This Text" --small --scale=0.6 -o images/code128_small_bold.svg -zint -b CODE11 -d "9212320967" --scale=0.6 -o images/code11.svg -zint -b C25STANDARD -d "9212320967" --scale=0.6 -o images/c25standard.svg -zint -b C25IATA -d "9212320967" --scale=0.6 -o images/c25iata.svg -zint -b C25IND -d "9212320967" --scale=0.6 -o images/c25ind.svg -zint -b C25INTER --compliantheight -d "9212320967" --scale=0.6 -o images/c25inter.svg -zint -b C25LOGIC -d "9212320967" --scale=0.6 -o images/c25logic.svg -zint -b ITF14 --compliantheight -d "9212320967145" --scale=0.6 -o images/itf14.svg -zint -b ITF14 --box --compliantheight -d "9212320967145" --scale=0.6 -o images/itf14_border0.svg -zint -b DPLEIT -d "9212320967145" --scale=0.6 -o images/dpleit.svg -zint -b DPIDENT -d "91232096712" --scale=0.6 -o images/dpident.svg -zint -b UPCA --compliantheight -d "72527270270" --scale=0.5 -o images/upca.svg -zint -b UPCA --compliantheight -d "72527270270+12345" --scale=0.5 -o images/upca_5.svg -zint -b UPCE --compliantheight -d "1123456" --scale=0.5 -o images/upce.svg -zint -b EANX --compliantheight -d "4512345678906" --scale=0.5 -o images/eanx13.svg -zint -b EANX --compliantheight -d "54321" --scale=0.5 -o images/eanx5.svg -zint -b EANX --compliantheight -d "7432365+54321" --scale=0.5 -o images/eanx8_5.svg -zint -b ISBNX --compliantheight -d "9789295055124" --scale=0.5 -o images/isbnx.svg -zint -b PLESSEY -d "C64" --scale=0.6 -o images/plessey.svg -zint -b MSI_PLESSEY -d "6502" --vers=2 --scale=0.6 -o images/msi_plessey.svg -zint -b TELEPEN --compliantheight -d "Z80" --scale=0.6 -o images/telepen.svg -zint -b TELEPEN_NUM --compliantheight -d "466X33" --scale=0.6 -o images/telepen_num.svg -zint -b CODE39 --compliantheight -d "1A" --vers=1 --scale=0.6 -o images/code39.svg -zint -b EXCODE39 --compliantheight -d "123.45$@fd" --scale=0.6 -o images/excode39.svg -zint -b CODE93 --compliantheight -d "C93" --scale=0.6 -o images/code93.svg -zint -b PZN --compliantheight -d "2758089" --scale=0.6 -o images/pzn.svg -zint -b LOGMARS --compliantheight -d "12345/ABCDE" --vers=1 --scale=0.6 -o images/logmars.svg -zint -b CODE32 --compliantheight -d "14352312" --scale=0.6 -o images/code32.svg -zint -b HIBC_39 --compliantheight -d "14352312" --scale=0.6 -o images/hibc_39.svg -zint -b VIN -d "2FTPX28L0XCA15511" --vers=1 --scale=0.6 -o images/vin.svg -zint -b CODABAR --compliantheight -d "A37859B" --scale=0.6 -o images/codabar.svg -zint -b PHARMA --compliantheight -d "130170" --scale=0.6 -o images/pharma.svg -zint -b CODE128 --bind -d "130170X178" --scale=0.6 -o images/code128.svg -zint -b CODE128B -d "130170X178" --scale=0.6 -o images/code128b.svg -zint -b GS1_128 --compliantheight -d "[01]98898765432106[3202]012345[15]991231" --scale=0.6 -o images/gs1_128.svg -zint -b EAN14 --compliantheight -d "9889876543210" --scale=0.6 -o images/ean14.svg -zint -b NVE18 --compliantheight -d "37612345000001003" --scale=0.6 -o images/nve18.svg -zint -b HIBC_128 -d "A123BJC5D6E71" --scale=0.6 -o images/hibc_128.svg -zint -b DPD --compliantheight -d "%000393206219912345678101040" --scale=0.6 -o images/dpd.svg -zint -b DBAR_OMN --compliantheight -d "0950110153001" --scale=0.6 -o images/dbar_omn.svg -zint -b DBAR_OMN -d "0950110153001" --height=13 --scale=0.6 -o images/dbar_truncated.svg -zint -b DBAR_LTD --compliantheight -d "0950110153001" --scale=0.6 -o images/dbar_ltd.svg -zint -b DBAR_EXP --compliantheight -d "[01]98898765432106[3202]012345[15]991231" --scale=0.6 -o images/dbar_exp.svg -zint -b KOREAPOST -d "923457" --scale=0.6 -o images/koreapost.svg -zint -b CHANNEL -d "453678" --compliantheight --scale=0.6 -o images/channel.svg -zint -b BC412 -d "AQ45670" --compliantheight --scale=0.6 -o images/bc412.svg -zint -d "This" -d "That" --scale=0.6 -o images/code128stacked.svg -zint --notext --bind --separator=2 -d "This" -d "That" --scale=0.6 -o images/code128stacked_sep2.svg -zint -b CODABLOCKF -d "CODABLOCK F Symbology" --rows=3 --scale=0.6 -o images/codablockf.svg -zint -b CODE16K --compliantheight -d "ab0123456789" --scale=0.6 -o images/code16k.svg -zint -b PDF417 -d "PDF417" --scale=0.6 -o images/pdf417.svg -zint -b PDF417COMP -d "PDF417" --scale=0.6 -o images/pdf417comp.svg -zint -b MICROPDF417 -d "12345678" --scale=0.6 -o images/micropdf417.svg -zint -b DBAR_STK --compliantheight -d "9889876543210" --scale=0.6 -o images/dbar_stk.svg -zint -b DBAR_OMNSTK --compliantheight -d "9889876543210" --scale=0.6 -o images/dbar_omnstk.svg -zint -b DBAR_EXPSTK --compliantheight -d "[01]98898765432106[3202]012345[15]991231" --scale=0.6 -o images/dbar_expstk.svg -zint -b CODE49 --compliantheight -d "MULTIPLE ROWS IN CODE 49" --scale=0.6 -o images/code49.svg -zint -b EANX_CC --compliantheight -d "[99]1234-abcd" --mode=1 --primary=331234567890 --scale=0.5 -o images/eanx_cc_a.svg -zint -b EANX_CC --compliantheight -d "[99]1234-abcd" --mode=2 --primary=331234567890 --scale=0.5 -o images/eanx_cc_b.svg -zint -b GS1_128_CC --compliantheight -d "[99]1234-abcd" --mode=3 --primary="[01]03312345678903" --scale=0.5 -o images/gs1_128_cc_c.svg -zint -b PHARMA_TWO --compliantheight -d "29876543" --scale=1 -o images/pharma_two.svg -zint -b POSTNET --compliantheight -d "12345678901" --scale=1 -o images/postnet.svg -zint -b PLANET --compliantheight -d "4012345235636" --scale=1 -o images/planet.svg -zint -b CEPNET --compliantheight -d "12345678" --scale=1 -o images/cepnet.svg -zint -b AUSPOST --compliantheight -d "96184209" --scale=1 -o images/auspost.svg -zint -b AUSROUTE --compliantheight -d "34567890" --scale=1 -o images/ausroute.svg -zint -b AUSREPLY --compliantheight -d "12345678" --scale=1 -o images/ausreply.svg -zint -b AUSREDIRECT --compliantheight -d "98765432" --scale=1 -o images/ausredirect.svg -zint -b KIX --compliantheight -d "2500GG30250" --scale=1 -o images/kix.svg -zint -b RM4SCC --compliantheight -d "W1J0TR01" --scale=1 -o images/rm4scc.svg -zint -b MAILMARK --compliantheight -d "1100000000000XY11" --scale=1 -o images/mailmark.svg -zint -b USPS_IMAIL --compliantheight -d "01234567094987654321-01234" --scale=1 -o images/usps_imail.svg -zint -b JAPANPOST --compliantheight -d "15400233-16-4-205" --scale=1 -o images/japanpost.svg -zint -b HIBC_DM -d "/ACMRN123456/V200912190833" --fast --square --scale=1.2 -o images/hibc_dm.svg -zint -b QRCODE -d "QR Code Symbol" --mask=5 --scale=1.2 -o images/qrcode.svg -zint -b MICROQR -d "01234567" --scale=1.2 -o images/microqr.svg -zint -b RMQR -d "0123456" --scale=1.2 -o images/rmqr.svg -zint -b UPNQR -d "UPNQR\n\n\n\n\nJanez Novak\nDunajska 1\n1000 Ljubljana\n00000008105\n\n\nRENT\nPlačilo najemnine 10/2016\n15.11.2016\nSI56051008010486080\nRF45SBO2010\nNovo podjetje d.o.o.\nLepa cesta 15\n3698 Loški Potok\n188\n " --esc --scale=1 -o images/upnqr.svg -zint -b MAXICODE -d "1Z00004951\GUPSN\G06X610\G159\G1234567\G1/1\G\GY\G1 MAIN ST\GNY\GNY\R\E" --esc --primary="152382802000000" --scmvv=96 --scale=1 -o images/maxicode.svg -zint -b AZTEC -d "123456789012" --scale=1 -o images/aztec.svg -zint -b AZRUNE -d "125" --scale=1 -o images/azrune.svg -zint -b CODEONE -d "1234567890123456789012" --scale=1 -o images/codeone.svg -zint -b GRIDMATRIX --eci=29 -d "AAT2556 电池充电器+降压转换器 200mA至2A tel:86 019 82512738" --scale=1 -o images/gridmatrix.svg -zint -b DOTCODE -d "[01]00012345678905[17]201231[10]ABC123456" --gs1 --scale=1 -o images/dotcode.svg -zint -b HANXIN -d "Hanxin Code symbol" --scale=1 -o images/hanxin.svg -zint -b ULTRA -d "HEIMASÍÐA KENNARAHÁSKÓLA ÍSLANDS" --scale=2 -o images/ultra.svg -zint -b FIM --compliantheight -d "C" --scale=1 -o images/fim.svg -zint -b FLAT -d "1304056" --scale=0.6 -o images/flat.svg -zint -b DAFT -d "AAFDTTDAFADTFTTFFFDATFTADTTFFTDAFAFDTF" --height=8.494 --vers=256 --scale=1 -o images/daft_rm4scc.svg +set -x + +# These are chosen to give appropriately sized images for PDF +SCALE_LINEAR=0.6 +SCALE_2D=1 +SCALE_2D_BIGGER=1.2 +SCALE_TRACK=1 +SCALE_DOTTY=2 +SCALE_ULTRA=2 +SCALE_UPCEAN=0.5 + +# Depending on platform and versions of installed components, may need to adjust the scales +# Multipying by 4 now seems necessary on Ubuntu 22.04 with pandoc 2.19 +scales=( SCALE_LINEAR SCALE_2D SCALE_2D_BIGGER SCALE_TRACK SCALE_DOTTY SCALE_ULTRA SCALE_UPCEAN ) +for scale in "${scales[@]}" ; do + eval $scale=$(echo "${!scale} * 4" | bc) +done + +zint -b PDF417 -d "This Text" --height=4 --heightperrow --scale=$SCALE_LINEAR -o images/pdf417_heightperrow.svg +zint --border=10 --box -d "This Text" -w 10 --scale=$SCALE_LINEAR -o images/code128_box.svg +zint -b QRCODE --border=1 --box -d "This Text" --quietzones --scale=$SCALE_2D -o images/qrcode_box.svg +zint -d "This Text" --fg=00FF00 --scale=$SCALE_LINEAR -o images/code128_green.svg +zint -d "This Text" --fg=00FF0055 --scale=$SCALE_LINEAR -o images/code128_green_alpha.svg +zint -d "This Text" --rotate=90 --scale=$SCALE_LINEAR -o images/code128_rotate90.svg +zint -b DATAMATRIX --eci=17 -d "€" --scale=$SCALE_2D -o images/datamatrix_euro.svg +zint -b DATAMATRIX --eci=28 -d "\u5E38" --esc --scale=$SCALE_2D -o images/datamatrix_big5.svg +zint -b QRCODE --binary -d "\xE2\x82\xAC\xE5\xB8\xB8" --esc --scale=$SCALE_2D -o images/qrcode_binary_utf8.svg +zint -b CODEONE -d "123456789012345678" --dotty --vers=9 --scale=$SCALE_DOTTY -o images/codeone_s_dotty.svg +zint -b AZTEC --eci=9 -d "Κείμενο" --seg1=7,"Текст" --seg2=20,"文章" --scale=$SCALE_2D -o images/aztec_segs.svg +zint -b DATAMATRIX -d "2nd of 3" --structapp="2,3,5006" --scale=$SCALE_2D -o images/datamatrix_structapp.svg +zint --bold -d "This Text" --small --scale=$SCALE_LINEAR -o images/code128_small_bold.svg +zint -b CODE11 -d "9212320967" --scale=$SCALE_LINEAR -o images/code11.svg +zint -b C25STANDARD -d "9212320967" --scale=$SCALE_LINEAR -o images/c25standard.svg +zint -b C25IATA -d "9212320967" --scale=$SCALE_LINEAR -o images/c25iata.svg +zint -b C25IND -d "9212320967" --scale=$SCALE_LINEAR -o images/c25ind.svg +zint -b C25INTER --compliantheight -d "9212320967" --scale=$SCALE_LINEAR -o images/c25inter.svg +zint -b C25LOGIC -d "9212320967" --scale=$SCALE_LINEAR -o images/c25logic.svg +zint -b ITF14 --compliantheight -d "9212320967145" --scale=$SCALE_LINEAR -o images/itf14.svg +zint -b ITF14 --box --compliantheight -d "9212320967145" --scale=$SCALE_LINEAR -o images/itf14_border0.svg +zint -b DPLEIT -d "9212320967145" --scale=$SCALE_LINEAR -o images/dpleit.svg +zint -b DPIDENT -d "91232096712" --scale=$SCALE_LINEAR -o images/dpident.svg +zint -b UPCA --compliantheight -d "72527270270" --scale=$SCALE_UPCEAN -o images/upca.svg +zint -b UPCA --compliantheight -d "72527270270+12345" --scale=$SCALE_UPCEAN -o images/upca_5.svg +zint -b UPCE --compliantheight -d "1123456" --scale=$SCALE_UPCEAN -o images/upce.svg +zint -b EANX --compliantheight -d "4512345678906" --scale=$SCALE_UPCEAN -o images/eanx13.svg +zint -b EANX --compliantheight -d "54321" --scale=$SCALE_UPCEAN -o images/eanx5.svg +zint -b EANX --compliantheight -d "7432365+54321" --scale=$SCALE_UPCEAN -o images/eanx8_5.svg +zint -b ISBNX --compliantheight -d "9789295055124" --scale=$SCALE_UPCEAN -o images/isbnx.svg +zint -b PLESSEY -d "C64" --scale=$SCALE_LINEAR -o images/plessey.svg +zint -b MSI_PLESSEY -d "6502" --vers=2 --scale=$SCALE_LINEAR -o images/msi_plessey.svg +zint -b TELEPEN --compliantheight -d "Z80" --scale=$SCALE_LINEAR -o images/telepen.svg +zint -b TELEPEN_NUM --compliantheight -d "466X33" --scale=$SCALE_LINEAR -o images/telepen_num.svg +zint -b CODE39 --compliantheight -d "1A" --vers=1 --scale=$SCALE_LINEAR -o images/code39.svg +zint -b EXCODE39 --compliantheight -d "123.45$@fd" --scale=$SCALE_LINEAR -o images/excode39.svg +zint -b CODE93 --compliantheight -d "C93" --scale=$SCALE_LINEAR -o images/code93.svg +zint -b PZN --compliantheight -d "2758089" --scale=$SCALE_LINEAR -o images/pzn.svg +zint -b LOGMARS --compliantheight -d "12345/ABCDE" --vers=1 --scale=$SCALE_LINEAR -o images/logmars.svg +zint -b CODE32 --compliantheight -d "14352312" --scale=$SCALE_LINEAR -o images/code32.svg +zint -b HIBC_39 --compliantheight -d "14352312" --scale=$SCALE_LINEAR -o images/hibc_39.svg +zint -b VIN -d "2FTPX28L0XCA15511" --vers=1 --scale=$SCALE_LINEAR -o images/vin.svg +zint -b CODABAR --compliantheight -d "A37859B" --scale=$SCALE_LINEAR -o images/codabar.svg +zint -b PHARMA --compliantheight -d "130170" --scale=$SCALE_LINEAR -o images/pharma.svg +zint -b CODE128 --bind -d "130170X178" --scale=$SCALE_LINEAR -o images/code128.svg +zint -b CODE128B -d "130170X178" --scale=$SCALE_LINEAR -o images/code128b.svg +zint -b GS1_128 --compliantheight -d "[01]98898765432106[3202]012345[15]991231" --scale=$SCALE_LINEAR -o images/gs1_128.svg +zint -b EAN14 --compliantheight -d "9889876543210" --scale=$SCALE_LINEAR -o images/ean14.svg +zint -b NVE18 --compliantheight -d "37612345000001003" --scale=$SCALE_LINEAR -o images/nve18.svg +zint -b HIBC_128 -d "A123BJC5D6E71" --scale=$SCALE_LINEAR -o images/hibc_128.svg +zint -b DPD --compliantheight -d "%000393206219912345678101040" --scale=$SCALE_LINEAR -o images/dpd.svg +zint -b DBAR_OMN --compliantheight -d "0950110153001" --scale=$SCALE_LINEAR -o images/dbar_omn.svg +zint -b DBAR_OMN -d "0950110153001" --height=13 --scale=$SCALE_LINEAR -o images/dbar_truncated.svg +zint -b DBAR_LTD --compliantheight -d "0950110153001" --scale=$SCALE_LINEAR -o images/dbar_ltd.svg +zint -b DBAR_EXP --compliantheight -d "[01]98898765432106[3202]012345[15]991231" --scale=$SCALE_LINEAR -o images/dbar_exp.svg +zint -b KOREAPOST -d "923457" --scale=$SCALE_LINEAR -o images/koreapost.svg +zint -b CHANNEL -d "453678" --compliantheight --scale=$SCALE_LINEAR -o images/channel.svg +zint -b BC412 -d "AQ45670" --compliantheight --scale=$SCALE_LINEAR -o images/bc412.svg +zint -d "This" -d "That" --scale=$SCALE_LINEAR -o images/code128_stacked.svg +zint --notext --bind --separator=2 -d "This" -d "That" --scale=$SCALE_LINEAR -o images/code128_stacked_sep2.svg +zint -b CODABLOCKF -d "CODABLOCK F Symbology" --rows=3 --scale=$SCALE_LINEAR -o images/codablockf.svg +zint -b CODE16K --compliantheight -d "ab0123456789" --scale=$SCALE_LINEAR -o images/code16k.svg +zint -b PDF417 -d "PDF417" --scale=$SCALE_LINEAR -o images/pdf417.svg +zint -b PDF417COMP -d "PDF417" --scale=$SCALE_LINEAR -o images/pdf417comp.svg +zint -b MICROPDF417 -d "12345678" --scale=$SCALE_LINEAR -o images/micropdf417.svg +zint -b DBAR_STK --compliantheight -d "9889876543210" --scale=$SCALE_LINEAR -o images/dbar_stk.svg +zint -b DBAR_OMNSTK --compliantheight -d "9889876543210" --scale=$SCALE_LINEAR -o images/dbar_omnstk.svg +zint -b DBAR_EXPSTK --compliantheight -d "[01]98898765432106[3202]012345[15]991231" --scale=$SCALE_LINEAR -o images/dbar_expstk.svg +zint -b CODE49 --compliantheight -d "MULTIPLE ROWS IN CODE 49" --scale=$SCALE_LINEAR -o images/code49.svg +zint -b EANX_CC --compliantheight -d "[99]1234-abcd" --mode=1 --primary=331234567890 --scale=$SCALE_UPCEAN -o images/eanx_cc_a.svg +zint -b EANX_CC --compliantheight -d "[99]1234-abcd" --mode=2 --primary=331234567890 --scale=$SCALE_UPCEAN -o images/eanx_cc_b.svg +zint -b GS1_128_CC --compliantheight -d "[99]1234-abcd" --mode=3 --primary="[01]03312345678903" --scale=$SCALE_UPCEAN -o images/gs1_128_cc_c.svg +zint -b PHARMA_TWO --compliantheight -d "29876543" --scale=$SCALE_TRACK -o images/pharma_two.svg +zint -b POSTNET --compliantheight -d "12345678901" --scale=$SCALE_TRACK -o images/postnet.svg +zint -b PLANET --compliantheight -d "4012345235636" --scale=$SCALE_TRACK -o images/planet.svg +zint -b CEPNET --compliantheight -d "12345678" --scale=$SCALE_TRACK -o images/cepnet.svg +zint -b AUSPOST --compliantheight -d "96184209" --scale=$SCALE_TRACK -o images/auspost.svg +zint -b AUSROUTE --compliantheight -d "34567890" --scale=$SCALE_TRACK -o images/ausroute.svg +zint -b AUSREPLY --compliantheight -d "12345678" --scale=$SCALE_TRACK -o images/ausreply.svg +zint -b AUSREDIRECT --compliantheight -d "98765432" --scale=$SCALE_TRACK -o images/ausredirect.svg +zint -b KIX --compliantheight -d "2500GG30250" --scale=$SCALE_TRACK -o images/kix.svg +zint -b RM4SCC --compliantheight -d "W1J0TR01" --scale=$SCALE_TRACK -o images/rm4scc.svg +zint -b MAILMARK --compliantheight -d "1100000000000XY11" --scale=$SCALE_TRACK -o images/mailmark.svg +zint -b USPS_IMAIL --compliantheight -d "01234567094987654321-01234" --scale=$SCALE_TRACK -o images/usps_imail.svg +zint -b JAPANPOST --compliantheight -d "15400233-16-4-205" --scale=$SCALE_TRACK -o images/japanpost.svg +zint -b HIBC_DM -d "/ACMRN123456/V200912190833" --fast --square --scale=$SCALE_2D_BIGGER -o images/hibc_dm.svg +zint -b QRCODE -d "QR Code Symbol" --mask=5 --scale=$SCALE_2D_BIGGER -o images/qrcode.svg +zint -b MICROQR -d "01234567" --scale=$SCALE_2D_BIGGER -o images/microqr.svg +zint -b RMQR -d "0123456" --scale=$SCALE_2D_BIGGER -o images/rmqr.svg +zint -b UPNQR -d "UPNQR\n\n\n\n\nJanez Novak\nDunajska 1\n1000 Ljubljana\n00000008105\n\n\nRENT\nPlačilo najemnine 10/2016\n15.11.2016\nSI56051008010486080\nRF45SBO2010\nNovo podjetje d.o.o.\nLepa cesta 15\n3698 Loški Potok\n188\n " --esc --scale=$SCALE_2D -o images/upnqr.svg +zint -b MAXICODE -d "1Z00004951\GUPSN\G06X610\G159\G1234567\G1/1\G\GY\G1 MAIN ST\GNY\GNY\R\E" --esc --primary="152382802000000" --scmvv=96 --scale=$SCALE_2D -o images/maxicode.svg +zint -b AZTEC -d "123456789012" --scale=$SCALE_2D -o images/aztec.svg +zint -b AZRUNE -d "125" --scale=$SCALE_2D -o images/azrune.svg +zint -b CODEONE -d "1234567890123456789012" --scale=$SCALE_2D -o images/codeone.svg +zint -b GRIDMATRIX --eci=29 -d "AAT2556 电池充电器+降压转换器 200mA至2A tel:86 019 82512738" --scale=$SCALE_2D -o images/gridmatrix.svg +zint -b DOTCODE -d "[01]00012345678905[17]201231[10]ABC123456" --gs1 --scale=$SCALE_2D -o images/dotcode.svg +zint -b HANXIN -d "Hanxin Code symbol" --scale=$SCALE_2D -o images/hanxin.svg +zint -b ULTRA -d "HEIMASÍÐA KENNARAHÁSKÓLA ÍSLANDS" --scale=$SCALE_ULTRA -o images/ultra.svg +zint -b FIM --compliantheight -d "C" --scale=$SCALE_TRACK -o images/fim.svg +zint -b FLAT -d "1304056" --scale=$SCALE_LINEAR -o images/flat.svg +zint -b DAFT -d "AAFDTTDAFADTFTTFFFDATFTADTTFFTDAFAFDTF" --height=8.494 --vers=256 --scale=$SCALE_TRACK -o images/daft_rm4scc.svg diff --git a/frontend/main.c b/frontend/main.c index 6556368f..a4490b18 100644 --- a/frontend/main.c +++ b/frontend/main.c @@ -282,7 +282,7 @@ static void to_lower(char source[]) { for (i = 0; i < src_len; i++) { if ((source[i] >= 'A') && (source[i] <= 'Z')) { - source[i] = (source[i] - 'A') + 'a'; + source[i] |= 0x20; } } } @@ -997,14 +997,14 @@ int main(int argc, char **argv) { my_symbol = ZBarcode_Create(); if (!my_symbol) { fprintf(stderr, "Error 151: Memory failure\n"); - exit(1); + exit(ZINT_ERROR_MEMORY); } no_png = strcmp(my_symbol->outfile, "out.gif") == 0; if (argc == 1) { ZBarcode_Delete(my_symbol); usage(no_png); - exit(1); + exit(ZINT_ERROR_INVALID_DATA); } my_symbol->input_mode = UNICODE_MODE; @@ -1012,6 +1012,7 @@ int main(int argc, char **argv) { win_args(&argc, &argv); #endif + opterr = 0; /* Disable `getopt_long_only()` printing errors */ while (no_getopt_error) { enum options { OPT_ADDONGAP = 128, OPT_BATCH, OPT_BINARY, OPT_BG, OPT_BIND, OPT_BOLD, OPT_BORDER, OPT_BOX, @@ -1269,7 +1270,7 @@ int main(int argc, char **argv) { if (float_opt >= 0.0f && float_opt <= 50.0f) { my_symbol->guard_descent = float_opt; } else { - fprintf(stderr, "Warning 155: Guard bar descent '%g' out of range (0 to 50), ignoring\n", + fprintf(stderr, "Warning 135: Guard bar descent '%g' out of range (0 to 50), ignoring\n", float_opt); fflush(stderr); warn_number = ZINT_WARN_INVALID_OPTION; @@ -1301,13 +1302,13 @@ int main(int argc, char **argv) { fprintf(stderr, "Error 148: Invalid mask value (digits only)\n"); return do_exit(ZINT_ERROR_INVALID_OPTION); } - if (val > 7) { /* `val` >= 0 always */ + if (val <= 7) { /* `val` >= 0 always */ + mask = val + 1; + } else { /* mask pattern >= 0 and <= 7 (i.e. values >= 1 and <= 8) only permitted */ fprintf(stderr, "Warning 147: Mask value out of range (0 to 7), ignoring\n"); fflush(stderr); warn_number = ZINT_WARN_INVALID_OPTION; - } else { - mask = val + 1; } break; case OPT_MODE: @@ -1508,17 +1509,14 @@ int main(int argc, char **argv) { usage(no_png); help = 1; break; - case 'v': version(no_png); help = 1; break; - case 't': types(); help = 1; break; - case 'e': show_eci(); help = 1; @@ -1584,25 +1582,21 @@ int main(int argc, char **argv) { break; case '?': - no_getopt_error = 0; + if (optopt) { + fprintf(stderr, "Error 109: option '%s' requires an argument\n", argv[optind - 1]); + } else { + fprintf(stderr, "Error 101: unknown option '%s'\n", argv[optind - 1]); + } + return do_exit(ZINT_ERROR_INVALID_OPTION); break; default: /* Shouldn't happen */ fprintf(stderr, "Error 123: ?? getopt error 0%o\n", c); /* Not reached */ - fflush(stderr); - no_getopt_error = 0; + return do_exit(ZINT_ERROR_ENCODING_PROBLEM); break; } } - if (optind < argc) { - fprintf(stderr, "Error 125: Invalid option\n"); - while (optind < argc) - fprintf(stderr, "%s", argv[optind++]); - fprintf(stderr, "\n"); - fflush(stderr); - } - if (data_arg_num) { const int symbology = my_symbol->symbology; const unsigned int cap = ZBarcode_Cap(symbology, ZINT_CAP_STACKABLE | ZINT_CAP_EXTENDABLE | diff --git a/frontend/tests/test_args.c b/frontend/tests/test_args.c index a1570615..55840e23 100644 --- a/frontend/tests/test_args.c +++ b/frontend/tests/test_args.c @@ -785,8 +785,8 @@ static void test_checks(const testCtx *const p_ctx) { /* 11*/ { -1, -1, -1, -1, -1, NULL, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Warning 110: Symbol height '-2' out of range (0.5 to 2000), ignoring" }, /* 12*/ { -1, -1, -1, -1, -1, NULL, 0, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Warning 110: Symbol height '0' out of range (0.5 to 2000), ignoring" }, /* 13*/ { -1, -1, -1, -1, -1, NULL, 2001, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Warning 110: Symbol height '2001' out of range (0.5 to 2000), ignoring" }, - /* 14*/ { -1, -1, -1, -1, -1, NULL, -1, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Warning 155: Guard bar descent '-2' out of range (0 to 50), ignoring" }, - /* 15*/ { -1, -1, -1, -1, -1, NULL, -1, 50.1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Warning 155: Guard bar descent '50.1' out of range (0 to 50), ignoring" }, + /* 14*/ { -1, -1, -1, -1, -1, NULL, -1, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Warning 135: Guard bar descent '-2' out of range (0 to 50), ignoring" }, + /* 15*/ { -1, -1, -1, -1, -1, NULL, -1, 50.1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Warning 135: Guard bar descent '50.1' out of range (0 to 50), ignoring" }, /* 16*/ { -1, -1, -1, -1, -1, NULL, -1, -1, -2, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Error 148: Invalid mask value (digits only)" }, /* 17*/ { -1, -1, -1, -1, -1, NULL, -1, -1, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Warning 147: Mask value out of range (0 to 7), ignoring" }, /* 18*/ { -1, -1, -1, -1, -1, NULL, -1, -1, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, "Warning 116: Mode value out of range (0 to 6), ignoring" }, @@ -874,202 +874,202 @@ static void test_barcode_symbology(const testCtx *const p_ctx) { static const struct item data[] = { /* 0*/ { "_", "1", NULL, 1, "Error 119: Invalid barcode type '_'" }, /* 1*/ { "a", "1", NULL, 1, "Error 119: Invalid barcode type 'a'" }, - /* 2*/ { "code128", "1", NULL, 0, "symbology: 20," }, + /* 2*/ { "code128", "1", NULL, 0, "BARCODE_CODE128 (20)," }, /* 3*/ { "code218", "1", NULL, 1, "Error 119: Invalid barcode type 'code218'" }, /* 4*/ { "code12", "1", NULL, 1, "Error 119: Invalid barcode type 'code12'" }, - /* 5*/ { "BARCODE_CODE11", "1", NULL, 0, "symbology: 1," }, - /* 6*/ { "C25 Standard", "1", NULL, 0, "symbology: 2," }, - /* 7*/ { "c25matrix", "1", NULL, 0, "symbology: 2," }, /* Legacy now supported */ - /* 8*/ { "2 of 5 Standard", "1", NULL, 0, "symbology: 2," }, /* Synonym */ - /* 9*/ { "2 of 5 Matrix", "1", NULL, 0, "symbology: 2," }, /* Synonym */ - /* 10*/ { "Code 2 of 5 Standard", "1", NULL, 0, "symbology: 2," }, /* Synonym */ - /* 11*/ { "Code 2 of 5 Matrix", "1", NULL, 0, "symbology: 2," }, /* Synonym */ - /* 12*/ { "Standard Code 2 of 5", "1", NULL, 0, "symbology: 2," }, /* Synonym */ - /* 13*/ { "C25INTER", "1", NULL, 0, "symbology: 3," }, - /* 14*/ { "c25 interleaved", "1", NULL, 0, "symbology: 3," }, /* Synonym */ - /* 15*/ { "code 2 of 5 inter", "1", NULL, 0, "symbology: 3," }, /* Synonym */ - /* 16*/ { "code 2 of 5 interleaved", "1", NULL, 0, "symbology: 3," }, /* Synonym */ - /* 17*/ { "2 of 5 inter", "1", NULL, 0, "symbology: 3," }, /* Synonym */ - /* 18*/ { "2 of 5 interleaved", "1", NULL, 0, "symbology: 3," }, /* Synonym */ - /* 19*/ { "interleaved 2 of 5", "1", NULL, 0, "symbology: 3," }, /* Synonym */ - /* 20*/ { "interleaved code 2 of 5", "1", NULL, 0, "symbology: 3," }, /* Synonym */ - /* 21*/ { "c25IATA", "1", NULL, 0, "symbology: 4," }, - /* 22*/ { "2of5IATA", "1", NULL, 0, "symbology: 4," }, /* Synonym */ - /* 23*/ { "code2of5IATA", "1", NULL, 0, "symbology: 4," }, /* Synonym */ - /* 24*/ { "IATA2of5", "1", NULL, 0, "symbology: 4," }, /* Synonym */ - /* 25*/ { "IATAcode2of5", "1", NULL, 0, "symbology: 4," }, /* Synonym */ - /* 26*/ { "c25 Logic", "1", NULL, 0, "symbology: 6," }, - /* 27*/ { "c25 Data Logic", "1", NULL, 0, "symbology: 6," }, /* Synonym */ - /* 28*/ { "Code 2 of 5 Logic", "1", NULL, 0, "symbology: 6," }, /* Synonym */ - /* 29*/ { "Code 2 of 5 Data Logic", "1", NULL, 0, "symbology: 6," }, /* Synonym */ - /* 30*/ { "2 of 5 Logic", "1", NULL, 0, "symbology: 6," }, /* Synonym */ - /* 31*/ { "2 of 5 Data Logic", "1", NULL, 0, "symbology: 6," }, /* Synonym */ - /* 32*/ { "c25 Ind", "1", NULL, 0, "symbology: 7," }, - /* 33*/ { "c25 Industrial", "1", NULL, 0, "symbology: 7," }, /* Synonym */ - /* 34*/ { "code 2 of 5 Ind", "1", NULL, 0, "symbology: 7," }, /* Synonym */ - /* 35*/ { "code 2 of 5 Industrial", "1", NULL, 0, "symbology: 7," }, /* Synonym */ - /* 36*/ { "2 of 5 Ind", "1", NULL, 0, "symbology: 7," }, /* Synonym */ - /* 37*/ { "2 of 5 Industrial", "1", NULL, 0, "symbology: 7," }, /* Synonym */ - /* 38*/ { "Industrial 2 of 5", "1", NULL, 0, "symbology: 7," }, /* Synonym */ - /* 39*/ { "Industrial code 2 of 5", "1", NULL, 0, "symbology: 7," }, /* Synonym */ - /* 40*/ { "code39", "1", NULL, 0, "symbology: 8," }, - /* 41*/ { "excode 39", "1", NULL, 0, "symbology: 9," }, - /* 42*/ { "Extended Code 39", "1", NULL, 0, "symbology: 9," }, - /* 43*/ { "eanx", "1", NULL, 0, "symbology: 13," }, - /* 44*/ { "ean", "1", NULL, 0, "symbology: 13," }, - /* 45*/ { "eanx chk", "1", NULL, 0, "symbology: 14," }, - /* 46*/ { "eanxchk", "1", NULL, 0, "symbology: 14," }, - /* 47*/ { "eanchk", "1", NULL, 0, "symbology: 14," }, - /* 48*/ { "GS1128", "[01]12345678901231", NULL, 0, "symbology: 16," }, - /* 49*/ { "ean 128", "[01]12345678901231", NULL, 0, "symbology: 16," }, - /* 50*/ { "coda bar", "A1B", NULL, 0, "symbology: 18," }, - /* 51*/ { "DPLEIT", "1", NULL, 0, "symbology: 21," }, - /* 52*/ { "DPIDENT", "1", NULL, 0, "symbology: 22," }, - /* 53*/ { "code16k", "1", NULL, 0, "symbology: 23," }, - /* 54*/ { "CODE49", "1", NULL, 0, "symbology: 24," }, - /* 55*/ { "CODE93", "1", NULL, 0, "symbology: 25," }, - /* 56*/ { "flat", "1", NULL, 0, "symbology: 28," }, - /* 57*/ { "dbar omn", "1", NULL, 0, "symbology: 29," }, - /* 58*/ { "rss14", "1", NULL, 0, "symbology: 29," }, - /* 59*/ { "databar omn", "1", NULL, 0, "symbology: 29," }, - /* 60*/ { "databar omni", "1", NULL, 0, "symbology: 29," }, - /* 61*/ { "dbar ltd", "1", NULL, 0, "symbology: 30," }, - /* 62*/ { "rss ltd", "1", NULL, 0, "symbology: 30," }, - /* 63*/ { "databar ltd", "1", NULL, 0, "symbology: 30," }, - /* 64*/ { "databar limited", "1", NULL, 0, "symbology: 30," }, - /* 65*/ { "dbarexp", "[10]12", NULL, 0, "symbology: 31," }, - /* 66*/ { "rss exp", "[10]12", NULL, 0, "symbology: 31," }, - /* 67*/ { "databarexp", "[10]12", NULL, 0, "symbology: 31," }, - /* 68*/ { "databarexpanded", "[10]12", NULL, 0, "symbology: 31," }, - /* 69*/ { "telepen", "1", NULL, 0, "symbology: 32," }, + /* 5*/ { "BARCODE_CODE11", "1", NULL, 0, "BARCODE_CODE11 (1)," }, + /* 6*/ { "C25 Standard", "1", NULL, 0, "BARCODE_C25STANDARD (2)," }, + /* 7*/ { "c25matrix", "1", NULL, 0, "BARCODE_C25STANDARD (2)," }, /* Legacy now supported */ + /* 8*/ { "2 of 5 Standard", "1", NULL, 0, "BARCODE_C25STANDARD (2)," }, /* Synonym */ + /* 9*/ { "2 of 5 Matrix", "1", NULL, 0, "BARCODE_C25STANDARD (2)," }, /* Synonym */ + /* 10*/ { "Code 2 of 5 Standard", "1", NULL, 0, "BARCODE_C25STANDARD (2)," }, /* Synonym */ + /* 11*/ { "Code 2 of 5 Matrix", "1", NULL, 0, "BARCODE_C25STANDARD (2)," }, /* Synonym */ + /* 12*/ { "Standard Code 2 of 5", "1", NULL, 0, "BARCODE_C25STANDARD (2)," }, /* Synonym */ + /* 13*/ { "C25INTER", "1", NULL, 0, "BARCODE_C25INTER (3)," }, + /* 14*/ { "c25 interleaved", "1", NULL, 0, "BARCODE_C25INTER (3)," }, /* Synonym */ + /* 15*/ { "code 2 of 5 inter", "1", NULL, 0, "BARCODE_C25INTER (3)," }, /* Synonym */ + /* 16*/ { "code 2 of 5 interleaved", "1", NULL, 0, "BARCODE_C25INTER (3)," }, /* Synonym */ + /* 17*/ { "2 of 5 inter", "1", NULL, 0, "BARCODE_C25INTER (3)," }, /* Synonym */ + /* 18*/ { "2 of 5 interleaved", "1", NULL, 0, "BARCODE_C25INTER (3)," }, /* Synonym */ + /* 19*/ { "interleaved 2 of 5", "1", NULL, 0, "BARCODE_C25INTER (3)," }, /* Synonym */ + /* 20*/ { "interleaved code 2 of 5", "1", NULL, 0, "BARCODE_C25INTER (3)," }, /* Synonym */ + /* 21*/ { "c25IATA", "1", NULL, 0, "BARCODE_C25IATA (4)," }, + /* 22*/ { "2of5IATA", "1", NULL, 0, "BARCODE_C25IATA (4)," }, /* Synonym */ + /* 23*/ { "code2of5IATA", "1", NULL, 0, "BARCODE_C25IATA (4)," }, /* Synonym */ + /* 24*/ { "IATA2of5", "1", NULL, 0, "BARCODE_C25IATA (4)," }, /* Synonym */ + /* 25*/ { "IATAcode2of5", "1", NULL, 0, "BARCODE_C25IATA (4)," }, /* Synonym */ + /* 26*/ { "c25 Logic", "1", NULL, 0, "BARCODE_C25LOGIC (6)," }, + /* 27*/ { "c25 Data Logic", "1", NULL, 0, "BARCODE_C25LOGIC (6)," }, /* Synonym */ + /* 28*/ { "Code 2 of 5 Logic", "1", NULL, 0, "BARCODE_C25LOGIC (6)," }, /* Synonym */ + /* 29*/ { "Code 2 of 5 Data Logic", "1", NULL, 0, "BARCODE_C25LOGIC (6)," }, /* Synonym */ + /* 30*/ { "2 of 5 Logic", "1", NULL, 0, "BARCODE_C25LOGIC (6)," }, /* Synonym */ + /* 31*/ { "2 of 5 Data Logic", "1", NULL, 0, "BARCODE_C25LOGIC (6)," }, /* Synonym */ + /* 32*/ { "c25 Ind", "1", NULL, 0, "BARCODE_C25IND (7)," }, + /* 33*/ { "c25 Industrial", "1", NULL, 0, "BARCODE_C25IND (7)," }, /* Synonym */ + /* 34*/ { "code 2 of 5 Ind", "1", NULL, 0, "BARCODE_C25IND (7)," }, /* Synonym */ + /* 35*/ { "code 2 of 5 Industrial", "1", NULL, 0, "BARCODE_C25IND (7)," }, /* Synonym */ + /* 36*/ { "2 of 5 Ind", "1", NULL, 0, "BARCODE_C25IND (7)," }, /* Synonym */ + /* 37*/ { "2 of 5 Industrial", "1", NULL, 0, "BARCODE_C25IND (7)," }, /* Synonym */ + /* 38*/ { "Industrial 2 of 5", "1", NULL, 0, "BARCODE_C25IND (7)," }, /* Synonym */ + /* 39*/ { "Industrial code 2 of 5", "1", NULL, 0, "BARCODE_C25IND (7)," }, /* Synonym */ + /* 40*/ { "code39", "1", NULL, 0, "BARCODE_CODE39 (8)," }, + /* 41*/ { "excode 39", "1", NULL, 0, "BARCODE_EXCODE39 (9)," }, + /* 42*/ { "Extended Code 39", "1", NULL, 0, "BARCODE_EXCODE39 (9)," }, + /* 43*/ { "eanx", "1", NULL, 0, "BARCODE_EANX (13)," }, + /* 44*/ { "ean", "1", NULL, 0, "BARCODE_EANX (13)," }, + /* 45*/ { "eanx chk", "1", NULL, 0, "BARCODE_EANX_CHK (14)," }, + /* 46*/ { "eanxchk", "1", NULL, 0, "BARCODE_EANX_CHK (14)," }, + /* 47*/ { "eanchk", "1", NULL, 0, "BARCODE_EANX_CHK (14)," }, + /* 48*/ { "GS1128", "[01]12345678901231", NULL, 0, "BARCODE_GS1_128 (16)," }, + /* 49*/ { "ean 128", "[01]12345678901231", NULL, 0, "BARCODE_GS1_128 (16)," }, + /* 50*/ { "coda bar", "A1B", NULL, 0, "BARCODE_CODABAR (18)," }, + /* 51*/ { "DPLEIT", "1", NULL, 0, "BARCODE_DPLEIT (21)," }, + /* 52*/ { "DPIDENT", "1", NULL, 0, "BARCODE_DPIDENT (22)," }, + /* 53*/ { "code16k", "1", NULL, 0, "BARCODE_CODE16K (23)," }, + /* 54*/ { "CODE49", "1", NULL, 0, "BARCODE_CODE49 (24)," }, + /* 55*/ { "CODE93", "1", NULL, 0, "BARCODE_CODE93 (25)," }, + /* 56*/ { "flat", "1", NULL, 0, "BARCODE_FLAT (28)," }, + /* 57*/ { "dbar omn", "1", NULL, 0, "BARCODE_DBAR_OMN (29)," }, + /* 58*/ { "rss14", "1", NULL, 0, "BARCODE_DBAR_OMN (29)," }, + /* 59*/ { "databar omn", "1", NULL, 0, "BARCODE_DBAR_OMN (29)," }, + /* 60*/ { "databar omni", "1", NULL, 0, "BARCODE_DBAR_OMN (29)," }, + /* 61*/ { "dbar ltd", "1", NULL, 0, "BARCODE_DBAR_LTD (30)," }, + /* 62*/ { "rss ltd", "1", NULL, 0, "BARCODE_DBAR_LTD (30)," }, + /* 63*/ { "databar ltd", "1", NULL, 0, "BARCODE_DBAR_LTD (30)," }, + /* 64*/ { "databar limited", "1", NULL, 0, "BARCODE_DBAR_LTD (30)," }, + /* 65*/ { "dbarexp", "[10]12", NULL, 0, "BARCODE_DBAR_EXP (31)," }, + /* 66*/ { "rss exp", "[10]12", NULL, 0, "BARCODE_DBAR_EXP (31)," }, + /* 67*/ { "databarexp", "[10]12", NULL, 0, "BARCODE_DBAR_EXP (31)," }, + /* 68*/ { "databarexpanded", "[10]12", NULL, 0, "BARCODE_DBAR_EXP (31)," }, + /* 69*/ { "telepen", "1", NULL, 0, "BARCODE_TELEPEN (32)," }, /* 70*/ { "upc", "1", NULL, 1, "Error 119: Invalid barcode type 'upc'" }, - /* 71*/ { "upca", "1", NULL, 0, "symbology: 34," }, - /* 72*/ { "upca_chk", "123456789012", NULL, 0, "symbology: 35," }, - /* 73*/ { "upce", "1", NULL, 0, "symbology: 37," }, - /* 74*/ { "upce chk", "12345670", NULL, 0, "symbology: 38," }, - /* 75*/ { "POSTNET ", "12345678901", NULL, 0, "symbology: 40," }, - /* 76*/ { "msi", "1", NULL, 0, "symbology: 47," }, - /* 77*/ { "MSI Plessey ", "1", NULL, 0, "symbology: 47," }, - /* 78*/ { "fim ", "A", NULL, 0, "symbology: 49," }, - /* 79*/ { "LOGMARS", "123456", NULL, 0, "symbology: 50," }, - /* 80*/ { " pharma", "123456", NULL, 0, "symbology: 51," }, - /* 81*/ { " pzn ", "1", NULL, 0, "symbology: 52," }, - /* 82*/ { "pharma two", "4", NULL, 0, "symbology: 53," }, - /* 83*/ { "cepnet", "12345678", NULL, 0, "symbology: 54," }, - /* 84*/ { "BARCODE_PDF417", "1", NULL, 0, "symbology: 55," }, + /* 71*/ { "upca", "1", NULL, 0, "BARCODE_UPCA (34)," }, + /* 72*/ { "upca_chk", "123456789012", NULL, 0, "BARCODE_UPCA_CHK (35)," }, + /* 73*/ { "upce", "1", NULL, 0, "BARCODE_UPCE (37)," }, + /* 74*/ { "upce chk", "12345670", NULL, 0, "BARCODE_UPCE_CHK (38)," }, + /* 75*/ { "POSTNET ", "12345678901", NULL, 0, "BARCODE_POSTNET (40)," }, + /* 76*/ { "msi", "1", NULL, 0, "BARCODE_MSI_PLESSEY (47)," }, + /* 77*/ { "MSI Plessey ", "1", NULL, 0, "BARCODE_MSI_PLESSEY (47)," }, + /* 78*/ { "fim ", "A", NULL, 0, "BARCODE_FIM (49)," }, + /* 79*/ { "LOGMARS", "123456", NULL, 0, "BARCODE_LOGMARS (50)," }, + /* 80*/ { " pharma", "123456", NULL, 0, "BARCODE_PHARMA (51)," }, + /* 81*/ { " pzn ", "1", NULL, 0, "BARCODE_PZN (52)," }, + /* 82*/ { "pharma two", "4", NULL, 0, "BARCODE_PHARMA_TWO (53)," }, + /* 83*/ { "cepnet", "12345678", NULL, 0, "BARCODE_CEPNET (54)," }, + /* 84*/ { "BARCODE_PDF417", "1", NULL, 0, "BARCODE_PDF417 (55)," }, /* 85*/ { "pdf", "1", NULL, 1, "Error 119: Invalid barcode type 'pdf'" }, - /* 86*/ { "barcodepdf417comp", "1", NULL, 0, "symbology: 56," }, - /* 87*/ { "pdf417trunc", "1", NULL, 0, "symbology: 56," }, - /* 88*/ { "MaxiCode", "1", NULL, 0, "symbology: 57," }, - /* 89*/ { "QR CODE", "1", NULL, 0, "symbology: 58," }, - /* 90*/ { "qr", "1", NULL, 0, "symbology: 58," }, /* Synonym */ - /* 91*/ { "Code 128 B", "1", NULL, 0, "symbology: 60," }, - /* 92*/ { "AUS POST", "12345678901234567890123", NULL, 0, "symbology: 63," }, - /* 93*/ { "AusReply", "12345678", NULL, 0, "symbology: 66," }, - /* 94*/ { "AUSROUTE", "12345678", NULL, 0, "symbology: 67," }, - /* 95*/ { "AUS REDIRECT", "12345678", NULL, 0, "symbology: 68," }, - /* 96*/ { "isbnx", "123456789", NULL, 0, "symbology: 69," }, - /* 97*/ { "rm4scc", "1", NULL, 0, "symbology: 70," }, - /* 98*/ { "DataMatrix", "1", NULL, 0, "symbology: 71," }, - /* 99*/ { "EAN14", "1", NULL, 0, "symbology: 72," }, - /*100*/ { "vin", "12345678701234567", NULL, 0, "symbology: 73," }, - /*101*/ { "CodaBlock-F", "1", NULL, 0, "symbology: 74," }, - /*102*/ { "NVE18", "1", NULL, 0, "symbology: 75," }, - /*103*/ { "Japan Post", "1", NULL, 0, "symbology: 76," }, - /*104*/ { "Korea Post", "1", NULL, 0, "symbology: 77," }, - /*105*/ { "DBar Stk", "1", NULL, 0, "symbology: 79," }, - /*106*/ { "rss14stack", "1", NULL, 0, "symbology: 79," }, - /*107*/ { "DataBar Stk", "1", NULL, 0, "symbology: 79," }, - /*108*/ { "DataBar Stacked", "1", NULL, 0, "symbology: 79," }, - /*109*/ { "DBar Omn Stk", "1", NULL, 0, "symbology: 80," }, - /*110*/ { "RSS14STACK OMNI", "1", NULL, 0, "symbology: 80," }, - /*111*/ { "DataBar Omn Stk", "1", NULL, 0, "symbology: 80," }, - /*112*/ { "DataBar Stacked Omn", "1", NULL, 0, "symbology: 80," }, - /*113*/ { "DataBar Stacked Omni", "1", NULL, 0, "symbology: 80," }, - /*114*/ { "DBar Exp Stk", "[20]01", NULL, 0, "symbology: 81," }, - /*115*/ { "rss_expstack", "[20]01", NULL, 0, "symbology: 81," }, - /*116*/ { "DataBar Exp Stk", "[20]01", NULL, 0, "symbology: 81," }, - /*117*/ { "DataBar Expanded Stk", "[20]01", NULL, 0, "symbology: 81," }, - /*118*/ { "DataBar Expanded Stacked", "[20]01", NULL, 0, "symbology: 81," }, - /*119*/ { "planet", "12345678901", NULL, 0, "symbology: 82," }, - /*120*/ { "MicroPDF417", "1", NULL, 0, "symbology: 84," }, - /*121*/ { "USPS IMail", "12345678901234567890", NULL, 0, "symbology: 85," }, - /*122*/ { "OneCode", "12345678901234567890", NULL, 0, "symbology: 85," }, - /*123*/ { "plessey", "1", NULL, 0, "symbology: 86," }, - /*124*/ { "telepen num", "1", NULL, 0, "symbology: 87," }, - /*125*/ { "ITF14", "1", NULL, 0, "symbology: 89," }, - /*126*/ { "KIX", "1", NULL, 0, "symbology: 90," }, - /*127*/ { "Aztec", "1", NULL, 0, "symbology: 92," }, - /*128*/ { "Aztec Code", "1", NULL, 0, "symbology: 92," }, /* Synonym */ - /*129*/ { "daft", "D", NULL, 0, "symbology: 93," }, - /*130*/ { "DPD", "0123456789012345678901234567", NULL, 0, "symbology: 96," }, - /*131*/ { "Micro QR", "1", NULL, 0, "symbology: 97," }, - /*132*/ { "Micro QR Code", "1", NULL, 0, "symbology: 97," }, - /*133*/ { "hibc128", "1", NULL, 0, "symbology: 98," }, - /*134*/ { "hibccode128", "1", NULL, 0, "symbology: 98," }, /* Synonym */ - /*135*/ { "hibc39", "1", NULL, 0, "symbology: 99," }, - /*136*/ { "hibccode39", "1", NULL, 0, "symbology: 99," }, /* Synonym */ - /*137*/ { "hibcdatamatrix", "1", NULL, 0, "symbology: 102," }, /* Synonym */ - /*138*/ { "hibcdm", "1", NULL, 0, "symbology: 102," }, - /*139*/ { "HIBC qr", "1", NULL, 0, "symbology: 104," }, - /*140*/ { "HIBC QR Code", "1", NULL, 0, "symbology: 104," }, /* Synonym */ - /*141*/ { "HIBCPDF", "1", NULL, 0, "symbology: 106," }, - /*142*/ { "HIBCPDF417", "1", NULL, 0, "symbology: 106," }, /* Synonym */ - /*143*/ { "HIBCMICPDF", "1", NULL, 0, "symbology: 108," }, - /*144*/ { "HIBC Micro PDF", "1", NULL, 0, "symbology: 108," }, /* Synonym */ - /*145*/ { "HIBC Micro PDF417", "1", NULL, 0, "symbology: 108," }, /* Synonym */ - /*146*/ { "HIBC BlockF", "1", NULL, 0, "symbology: 110," }, - /*147*/ { "HIBC CodaBlock-F", "1", NULL, 0, "symbology: 110," }, /* Synonym */ - /*148*/ { "HIBC Aztec", "1", NULL, 0, "symbology: 112," }, - /*149*/ { "DotCode", "1", NULL, 0, "symbology: 115," }, - /*150*/ { "Han Xin", "1", NULL, 0, "symbology: 116," }, - /*151*/ { "Mailmark", "01000000000000000AA00AA0A", NULL, 0, "symbology: 121," }, - /*152*/ { "azrune", "1", NULL, 0, "symbology: 128," }, - /*153*/ { "aztecrune", "1", NULL, 0, "symbology: 128," }, /* Synonym */ - /*154*/ { "aztecrunes", "1", NULL, 0, "symbology: 128," }, /* Synonym */ - /*155*/ { "code32", "1", NULL, 0, "symbology: 129," }, - /*156*/ { "eanx cc", "[20]01", "1234567890128", 0, "symbology: 130," }, - /*157*/ { "eancc", "[20]01", "1234567890128", 0, "symbology: 130," }, - /*158*/ { "GS1 128 CC", "[01]12345678901231", "[20]01", 0, "symbology: 131," }, - /*159*/ { "EAN128 CC", "[01]12345678901231", "[20]01", 0, "symbology: 131," }, - /*160*/ { "dbaromncc", "[20]01", "1234567890123", 0, "symbology: 132," }, - /*161*/ { "rss14 cc", "[20]01", "1234567890123", 0, "symbology: 132," }, - /*162*/ { "databaromncc", "[20]01", "1234567890123", 0, "symbology: 132," }, - /*163*/ { "databaromnicc", "[20]01", "1234567890123", 0, "symbology: 132," }, - /*164*/ { "dbarltdcc", "[20]01", "1234567890123", 0, "symbology: 133," }, - /*165*/ { "rss ltd cc", "[20]01", "1234567890123", 0, "symbology: 133," }, - /*166*/ { "databarltdcc", "[20]01", "1234567890123", 0, "symbology: 133," }, - /*167*/ { "databarlimitedcc", "[20]01", "1234567890123", 0, "symbology: 133," }, - /*168*/ { "dbarexpcc", "[20]01", "[01]12345678901231", 0, "symbology: 134," }, - /*169*/ { "rss exp cc", "[20]01", "[01]12345678901231", 0, "symbology: 134," }, - /*170*/ { "databarexpcc", "[20]01", "[01]12345678901231", 0, "symbology: 134," }, - /*171*/ { "databar expanded cc", "[20]01", "[01]12345678901231", 0, "symbology: 134," }, - /*172*/ { "upcacc", "[20]01", "12345678901", 0, "symbology: 135," }, - /*173*/ { "upcecc", "[20]01", "1234567", 0, "symbology: 136," }, - /*174*/ { "dbar stk cc", "[20]01", "1234567890123", 0, "symbology: 137," }, - /*175*/ { "rss14stackcc", "[20]01", "1234567890123", 0, "symbology: 137," }, - /*176*/ { "databar stk cc", "[20]01", "1234567890123", 0, "symbology: 137," }, - /*177*/ { "databar stacked cc", "[20]01", "1234567890123", 0, "symbology: 137," }, - /*178*/ { "dbaromnstkcc", "[20]01", "1234567890123", 0, "symbology: 138," }, - /*179*/ { "BARCODE_RSS14_OMNI_CC", "[20]01", "1234567890123", 0, "symbology: 138," }, - /*180*/ { "databaromnstkcc", "[20]01", "1234567890123", 0, "symbology: 138," }, - /*181*/ { "databar stacked omncc", "[20]01", "1234567890123", 0, "symbology: 138," }, - /*182*/ { "databar stacked omni cc", "[20]01", "1234567890123", 0, "symbology: 138," }, - /*183*/ { "dbarexpstkcc", "[20]01", "[01]12345678901231", 0, "symbology: 139," }, - /*184*/ { "RSS EXPSTACK CC", "[20]01", "[01]12345678901231", 0, "symbology: 139," }, - /*185*/ { "databarexpstkcc", "[20]01", "[01]12345678901231", 0, "symbology: 139," }, - /*186*/ { "databar expanded stkcc", "[20]01", "[01]12345678901231", 0, "symbology: 139," }, - /*187*/ { "databar expanded stacked cc", "[20]01", "[01]12345678901231", 0, "symbology: 139," }, - /*188*/ { "Channel", "1", NULL, 0, "symbology: 140," }, - /*189*/ { "Channel Code", "1", NULL, 0, "symbology: 140," }, - /*190*/ { "CodeOne", "1", NULL, 0, "symbology: 141," }, - /*191*/ { "Grid Matrix", "1", NULL, 0, "symbology: 142," }, - /*192*/ { "UPN QR", "1", NULL, 0, "symbology: 143," }, - /*193*/ { "UPN QR Code", "1", NULL, 0, "symbology: 143," }, /* Synonym */ - /*194*/ { "ultra", "1", NULL, 0, "symbology: 144," }, - /*195*/ { "ultracode", "1", NULL, 0, "symbology: 144," }, /* Synonym */ - /*196*/ { "rMQR", "1", NULL, 0, "symbology: 145," }, - /*197*/ { "bc412", "1234567", NULL, 0, "symbology: 146," }, + /* 86*/ { "barcodepdf417comp", "1", NULL, 0, "BARCODE_PDF417COMP (56)," }, + /* 87*/ { "pdf417trunc", "1", NULL, 0, "BARCODE_PDF417COMP (56)," }, + /* 88*/ { "MaxiCode", "1", NULL, 0, "BARCODE_MAXICODE (57)," }, + /* 89*/ { "QR CODE", "1", NULL, 0, "BARCODE_QRCODE (58)," }, + /* 90*/ { "qr", "1", NULL, 0, "BARCODE_QRCODE (58)," }, /* Synonym */ + /* 91*/ { "Code 128 B", "1", NULL, 0, "BARCODE_CODE128B (60)," }, + /* 92*/ { "AUS POST", "12345678901234567890123", NULL, 0, "BARCODE_AUSPOST (63)," }, + /* 93*/ { "AusReply", "12345678", NULL, 0, "BARCODE_AUSREPLY (66)," }, + /* 94*/ { "AUSROUTE", "12345678", NULL, 0, "BARCODE_AUSROUTE (67)," }, + /* 95*/ { "AUS REDIRECT", "12345678", NULL, 0, "BARCODE_AUSREDIRECT (68)," }, + /* 96*/ { "isbnx", "123456789", NULL, 0, "BARCODE_ISBNX (69)," }, + /* 97*/ { "rm4scc", "1", NULL, 0, "BARCODE_RM4SCC (70)," }, + /* 98*/ { "DataMatrix", "1", NULL, 0, "BARCODE_DATAMATRIX (71)," }, + /* 99*/ { "EAN14", "1", NULL, 0, "BARCODE_EAN14 (72)," }, + /*100*/ { "vin", "12345678701234567", NULL, 0, "BARCODE_VIN (73)" }, + /*101*/ { "CodaBlock-F", "1", NULL, 0, "BARCODE_CODABLOCKF (74)," }, + /*102*/ { "NVE18", "1", NULL, 0, "BARCODE_NVE18 (75)," }, + /*103*/ { "Japan Post", "1", NULL, 0, "BARCODE_JAPANPOST (76)," }, + /*104*/ { "Korea Post", "1", NULL, 0, "BARCODE_KOREAPOST (77)," }, + /*105*/ { "DBar Stk", "1", NULL, 0, "BARCODE_DBAR_STK (79)," }, + /*106*/ { "rss14stack", "1", NULL, 0, "BARCODE_DBAR_STK (79)," }, + /*107*/ { "DataBar Stk", "1", NULL, 0, "BARCODE_DBAR_STK (79)," }, + /*108*/ { "DataBar Stacked", "1", NULL, 0, "BARCODE_DBAR_STK (79)," }, + /*109*/ { "DBar Omn Stk", "1", NULL, 0, "BARCODE_DBAR_OMNSTK (80)," }, + /*110*/ { "RSS14STACK OMNI", "1", NULL, 0, "BARCODE_DBAR_OMNSTK (80)," }, + /*111*/ { "DataBar Omn Stk", "1", NULL, 0, "BARCODE_DBAR_OMNSTK (80)," }, + /*112*/ { "DataBar Stacked Omn", "1", NULL, 0, "BARCODE_DBAR_OMNSTK (80)," }, + /*113*/ { "DataBar Stacked Omni", "1", NULL, 0, "BARCODE_DBAR_OMNSTK (80)," }, + /*114*/ { "DBar Exp Stk", "[20]01", NULL, 0, "BARCODE_DBAR_EXPSTK (81)," }, + /*115*/ { "rss_expstack", "[20]01", NULL, 0, "BARCODE_DBAR_EXPSTK (81)," }, + /*116*/ { "DataBar Exp Stk", "[20]01", NULL, 0, "BARCODE_DBAR_EXPSTK (81)," }, + /*117*/ { "DataBar Expanded Stk", "[20]01", NULL, 0, "BARCODE_DBAR_EXPSTK (81)," }, + /*118*/ { "DataBar Expanded Stacked", "[20]01", NULL, 0, "BARCODE_DBAR_EXPSTK (81)," }, + /*119*/ { "planet", "12345678901", NULL, 0, "BARCODE_PLANET (82)," }, + /*120*/ { "MicroPDF417", "1", NULL, 0, "BARCODE_MICROPDF417 (84)," }, + /*121*/ { "USPS IMail", "12345678901234567890", NULL, 0, "BARCODE_USPS_IMAIL (85)," }, + /*122*/ { "OneCode", "12345678901234567890", NULL, 0, "BARCODE_USPS_IMAIL (85)," }, + /*123*/ { "plessey", "1", NULL, 0, "BARCODE_PLESSEY (86)," }, + /*124*/ { "telepen num", "1", NULL, 0, "BARCODE_TELEPEN_NUM (87)," }, + /*125*/ { "ITF14", "1", NULL, 0, "BARCODE_ITF14 (89)," }, + /*126*/ { "KIX", "1", NULL, 0, "BARCODE_KIX (90)," }, + /*127*/ { "Aztec", "1", NULL, 0, "BARCODE_AZTEC (92)," }, + /*128*/ { "Aztec Code", "1", NULL, 0, "BARCODE_AZTEC (92)," }, /* Synonym */ + /*129*/ { "daft", "D", NULL, 0, "BARCODE_DAFT (93)," }, + /*130*/ { "DPD", "0123456789012345678901234567", NULL, 0, "BARCODE_DPD (96)," }, + /*131*/ { "Micro QR", "1", NULL, 0, "BARCODE_MICROQR (97)," }, + /*132*/ { "Micro QR Code", "1", NULL, 0, "BARCODE_MICROQR (97)," }, + /*133*/ { "hibc128", "1", NULL, 0, "BARCODE_HIBC_128 (98)," }, + /*134*/ { "hibccode128", "1", NULL, 0, "BARCODE_HIBC_128 (98)," }, /* Synonym */ + /*135*/ { "hibc39", "1", NULL, 0, "BARCODE_HIBC_39 (99)," }, + /*136*/ { "hibccode39", "1", NULL, 0, "BARCODE_HIBC_39 (99)," }, /* Synonym */ + /*137*/ { "hibcdatamatrix", "1", NULL, 0, "BARCODE_HIBC_DM (102)," }, /* Synonym */ + /*138*/ { "hibcdm", "1", NULL, 0, "BARCODE_HIBC_DM (102)," }, + /*139*/ { "HIBC qr", "1", NULL, 0, "BARCODE_HIBC_QR (104)," }, + /*140*/ { "HIBC QR Code", "1", NULL, 0, "BARCODE_HIBC_QR (104)," }, /* Synonym */ + /*141*/ { "HIBCPDF", "1", NULL, 0, "BARCODE_HIBC_PDF (106)," }, + /*142*/ { "HIBCPDF417", "1", NULL, 0, "BARCODE_HIBC_PDF (106)," }, /* Synonym */ + /*143*/ { "HIBCMICPDF", "1", NULL, 0, "BARCODE_HIBC_MICPDF (108)," }, + /*144*/ { "HIBC Micro PDF", "1", NULL, 0, "BARCODE_HIBC_MICPDF (108)," }, /* Synonym */ + /*145*/ { "HIBC Micro PDF417", "1", NULL, 0, "BARCODE_HIBC_MICPDF (108)," }, /* Synonym */ + /*146*/ { "HIBC BlockF", "1", NULL, 0, "BARCODE_HIBC_BLOCKF (110)," }, + /*147*/ { "HIBC CodaBlock-F", "1", NULL, 0, "BARCODE_HIBC_BLOCKF (110)," }, /* Synonym */ + /*148*/ { "HIBC Aztec", "1", NULL, 0, "BARCODE_HIBC_AZTEC (112)," }, + /*149*/ { "DotCode", "1", NULL, 0, "BARCODE_DOTCODE (115)," }, + /*150*/ { "Han Xin", "1", NULL, 0, "BARCODE_HANXIN (116)," }, + /*151*/ { "Mailmark", "01000000000000000AA00AA0A", NULL, 0, "BARCODE_MAILMARK (121)," }, + /*152*/ { "azrune", "1", NULL, 0, "BARCODE_AZRUNE (128)," }, + /*153*/ { "aztecrune", "1", NULL, 0, "BARCODE_AZRUNE (128)," }, /* Synonym */ + /*154*/ { "aztecrunes", "1", NULL, 0, "BARCODE_AZRUNE (128)," }, /* Synonym */ + /*155*/ { "code32", "1", NULL, 0, "BARCODE_CODE32 (129)," }, + /*156*/ { "eanx cc", "[20]01", "1234567890128", 0, "BARCODE_EANX_CC (130)," }, + /*157*/ { "eancc", "[20]01", "1234567890128", 0, "BARCODE_EANX_CC (130)," }, + /*158*/ { "GS1 128 CC", "[01]12345678901231", "[20]01", 0, "BARCODE_GS1_128_CC (131)," }, + /*159*/ { "EAN128 CC", "[01]12345678901231", "[20]01", 0, "BARCODE_GS1_128_CC (131)," }, + /*160*/ { "dbaromncc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_OMN_CC (132)," }, + /*161*/ { "rss14 cc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_OMN_CC (132)," }, + /*162*/ { "databaromncc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_OMN_CC (132)," }, + /*163*/ { "databaromnicc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_OMN_CC (132)," }, + /*164*/ { "dbarltdcc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_LTD_CC (133)," }, + /*165*/ { "rss ltd cc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_LTD_CC (133)," }, + /*166*/ { "databarltdcc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_LTD_CC (133)," }, + /*167*/ { "databarlimitedcc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_LTD_CC (133)," }, + /*168*/ { "dbarexpcc", "[20]01", "[01]12345678901231", 0, "BARCODE_DBAR_EXP_CC (134)," }, + /*169*/ { "rss exp cc", "[20]01", "[01]12345678901231", 0, "BARCODE_DBAR_EXP_CC (134)," }, + /*170*/ { "databarexpcc", "[20]01", "[01]12345678901231", 0, "BARCODE_DBAR_EXP_CC (134)," }, + /*171*/ { "databar expanded cc", "[20]01", "[01]12345678901231", 0, "BARCODE_DBAR_EXP_CC (134)," }, + /*172*/ { "upcacc", "[20]01", "12345678901", 0, "BARCODE_UPCA_CC (135)," }, + /*173*/ { "upcecc", "[20]01", "1234567", 0, "BARCODE_UPCE_CC (136)," }, + /*174*/ { "dbar stk cc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_STK_CC (137)," }, + /*175*/ { "rss14stackcc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_STK_CC (137)," }, + /*176*/ { "databar stk cc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_STK_CC (137)," }, + /*177*/ { "databar stacked cc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_STK_CC (137)," }, + /*178*/ { "dbaromnstkcc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_OMNSTK_CC (138)," }, + /*179*/ { "BARCODE_RSS14_OMNI_CC", "[20]01", "1234567890123", 0, "BARCODE_DBAR_OMNSTK_CC (138)," }, + /*180*/ { "databaromnstkcc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_OMNSTK_CC (138)," }, + /*181*/ { "databar stacked omncc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_OMNSTK_CC (138)," }, + /*182*/ { "databar stacked omni cc", "[20]01", "1234567890123", 0, "BARCODE_DBAR_OMNSTK_CC (138)," }, + /*183*/ { "dbarexpstkcc", "[20]01", "[01]12345678901231", 0, "BARCODE_DBAR_EXPSTK_CC (139)," }, + /*184*/ { "RSS EXPSTACK CC", "[20]01", "[01]12345678901231", 0, "BARCODE_DBAR_EXPSTK_CC (139)," }, + /*185*/ { "databarexpstkcc", "[20]01", "[01]12345678901231", 0, "BARCODE_DBAR_EXPSTK_CC (139)," }, + /*186*/ { "databar expanded stkcc", "[20]01", "[01]12345678901231", 0, "BARCODE_DBAR_EXPSTK_CC (139)," }, + /*187*/ { "databar expanded stacked cc", "[20]01", "[01]12345678901231", 0, "BARCODE_DBAR_EXPSTK_CC (139)," }, + /*188*/ { "Channel", "1", NULL, 0, "BARCODE_CHANNEL (140)," }, + /*189*/ { "Channel Code", "1", NULL, 0, "BARCODE_CHANNEL (140)," }, + /*190*/ { "CodeOne", "1", NULL, 0, "BARCODE_CODEONE (141)," }, + /*191*/ { "Grid Matrix", "1", NULL, 0, "BARCODE_GRIDMATRIX (142)," }, + /*192*/ { "UPN QR", "1", NULL, 0, "BARCODE_UPNQR (143)," }, + /*193*/ { "UPN QR Code", "1", NULL, 0, "BARCODE_UPNQR (143)," }, /* Synonym */ + /*194*/ { "ultra", "1", NULL, 0, "BARCODE_ULTRA (144)," }, + /*195*/ { "ultracode", "1", NULL, 0, "BARCODE_ULTRA (144)," }, /* Synonym */ + /*196*/ { "rMQR", "1", NULL, 0, "BARCODE_RMQR (145)," }, + /*197*/ { "bc412", "1234567", NULL, 0, "BARCODE_BC412 (146)," }, /*198*/ { "x", "1", NULL, 1, "Error 119: Invalid barcode type 'x'" }, /*199*/ { "\177", "1", NULL, 1, "Error 119: Invalid barcode type '\177'" }, }; @@ -1096,10 +1096,10 @@ static void test_barcode_symbology(const testCtx *const p_ctx) { strcat(cmd, " 2>&1"); assert_nonnull(exec(cmd, buf, sizeof(buf) - 1, debug, i, NULL), "i:%d exec(%s) NULL\n", i, cmd); - assert_nonnull(strstr(buf, data[i].expected), "i:%d strstr(%s, %s) == NULL (%s)\n", i, buf, data[i].expected, cmd); if (!data[i].fail) { assert_zero(remove(outfilename), "i:%d remove(%s) != 0 (%d: %s) (%s)\n", i, outfilename, errno, strerror(errno), cmd); } + assert_nonnull(strstr(buf, data[i].expected), "i:%d strstr(%s, %s) == NULL (%s)\n", i, buf, data[i].expected, cmd); } testFinish(); @@ -1231,6 +1231,9 @@ static void test_exit_status(const testCtx *const p_ctx) { /* 2*/ { BARCODE_CODE128, "1", -1, " --border=", "1001", ZINT_WARN_INVALID_OPTION }, /* Caught by CLI */ /* 3*/ { BARCODE_CODE128, "1", -1, " --data=", "\200", ZINT_ERROR_INVALID_DATA }, /* Caught by libzint */ /* 4*/ { BARCODE_CODE128, "1", -1, " --separator=", "-1", ZINT_ERROR_INVALID_OPTION }, /* Caught by CLI */ + /* 5*/ { BARCODE_CODE128, "1", -1, " --separator", NULL, ZINT_ERROR_INVALID_OPTION }, + /* 6*/ { BARCODE_CODE128, "1", -1, " --separator=", NULL, 0 }, /* Separator arg treated as 0 */ + /* 7*/ { BARCODE_CODE128, "1", -1, " --unknown", NULL, ZINT_ERROR_INVALID_OPTION }, }; int data_size = ARRAY_SIZE(data); int i; diff --git a/frontend_qt/mainWindow.ui b/frontend_qt/mainWindow.ui index 70367258..358a8421 100644 --- a/frontend_qt/mainWindow.ui +++ b/frontend_qt/mainWindow.ui @@ -1697,7 +1697,7 @@ and use standard height (if any) for default Width of boundary bars or border in X-dimensions - Border &Width: + B&order Width: Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter @@ -2091,7 +2091,7 @@ or "RRGGBBAA" (alpha) - Add compliant quiet zones to whitespace + Add compliant quiet zones (if any) to whitespace (ignored if disabled)