Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
CRAP | |
100.00% |
1 / 1 |
C128a | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 | |
100.00% |
1 / 1 |
setContent | |
100.00% |
1 / 1 |
|
100.00% |
1 / 1 |
1 |
1 | <?php |
2 | /** |
3 | * Jingga |
4 | * |
5 | * PHP Version 8.1 |
6 | * |
7 | * @package phpOMS\Utils\Barcode |
8 | * @copyright Dennis Eichhorn |
9 | * @license OMS License 2.0 |
10 | * @version 1.0.0 |
11 | * @link https://jingga.app |
12 | */ |
13 | declare(strict_types=1); |
14 | |
15 | namespace phpOMS\Utils\Barcode; |
16 | |
17 | /** |
18 | * Code 128a class. |
19 | * |
20 | * @package phpOMS\Utils\Barcode |
21 | * @license OMS License 2.0 |
22 | * @link https://jingga.app |
23 | * @since 1.0.0 |
24 | * |
25 | * @SuppressWarnings(PHPMD.CamelCasePropertyName) |
26 | * @SuppressWarnings(PHPMD.CamelCaseVariableName) |
27 | */ |
28 | class C128a extends BarAbstract |
29 | { |
30 | /** |
31 | * Checksum. |
32 | * |
33 | * @var int |
34 | * @since 1.0.0 |
35 | */ |
36 | protected static int $CHECKSUM = 103; |
37 | |
38 | /** |
39 | * Char weighted array. |
40 | * |
41 | * @var string[] |
42 | * @since 1.0.0 |
43 | */ |
44 | protected static array $CODEARRAY = [ |
45 | ' ' => '212222', '!' => '222122', '"' => '222221', '#' => '121223', '$' => '121322', '%' => '131222', |
46 | '&' => '122213', '\'' => '122312', '(' => '132212', ')' => '221213', '*' => '221312', '+' => '231212', |
47 | ',' => '112232', '-' => '122132', '.' => '122231', '/' => '113222', '0' => '123122', '1' => '123221', |
48 | '2' => '223211', '3' => '221132', '4' => '221231', '5' => '213212', '6' => '223112', '7' => '312131', |
49 | '8' => '311222', '9' => '321122', ':' => '321221', ';' => '312212', '<' => '322112', '=' => '322211', |
50 | '>' => '212123', '?' => '212321', '@' => '232121', 'A' => '111323', 'B' => '131123', 'C' => '131321', |
51 | 'D' => '112313', 'E' => '132113', 'F' => '132311', 'G' => '211313', 'H' => '231113', 'I' => '231311', |
52 | 'J' => '112133', 'K' => '112331', 'L' => '132131', 'M' => '113123', 'N' => '113321', 'O' => '133121', |
53 | 'P' => '313121', 'Q' => '211331', 'R' => '231131', 'S' => '213113', 'T' => '213311', 'U' => '213131', |
54 | 'V' => '311123', 'W' => '311321', 'X' => '331121', 'Y' => '312113', 'Z' => '312311', '[' => '332111', |
55 | '\\' => '314111', ']' => '221411', '^' => '431111', '_' => '111224', 'NUL' => '111422', 'SOH' => '121124', |
56 | 'STX' => '121421', 'ETX' => '141122', 'EOT' => '141221', 'ENQ' => '112214', 'ACK' => '112412', |
57 | 'BEL' => '122114', 'BS' => '122411', 'HT' => '142112', 'LF' => '142211', 'VT' => '241211', 'FF' => '221114', |
58 | 'CR' => '413111', 'SO' => '241112', 'SI' => '134111', 'DLE' => '111242', 'DC1' => '121142', |
59 | 'DC2' => '121241', 'DC3' => '114212', 'DC4' => '124112', 'NAK' => '124211', 'SYN' => '411212', |
60 | 'ETB' => '421112', 'CAN' => '421211', 'EM' => '212141', 'SUB' => '214121', 'ESC' => '412121', |
61 | 'FS' => '111143', 'GS' => '111341', 'RS' => '131141', 'US' => '114113', 'FNC 3' => '114311', |
62 | 'FNC 2' => '411113', 'SHIFT' => '411311', 'CODE C' => '113141', 'CODE B' => '114131', 'FNC 4' => '311141', |
63 | 'FNC 1' => '411131', 'Start A' => '211412', 'Start B' => '211214', 'Start C' => '211232', |
64 | 'Stop' => '2331112', |
65 | ]; |
66 | |
67 | /** |
68 | * Code start. |
69 | * |
70 | * @var string |
71 | * @since 1.0.0 |
72 | */ |
73 | protected static string $CODE_START = '211412'; |
74 | |
75 | /** |
76 | * Code end. |
77 | * |
78 | * @var string |
79 | * @since 1.0.0 |
80 | */ |
81 | protected static string $CODE_END = '2331112'; |
82 | |
83 | /** |
84 | * {@inheritdoc} |
85 | */ |
86 | public function setContent(string $content) : void |
87 | { |
88 | parent::setContent(\strtoupper($content)); |
89 | } |
90 | } |