classes-Datamatrix

It appears that you are using AdBlocking software. The cost of running this website is covered by advertisements. If you like it please feel free to a small amount of money to secure the future of this website.
    Tags
    class

    Datamatrix Class to create DataMatrix ECC 200 barcode arrays for TCPDF class. DataMatrix (ISO/IEC 16022:2006) is a 2-dimensional bar code.

    author

    Nicola Asuni

    version
    1.0.004

    Table of Contents

    $barcode_array  : mixed
    Barcode array to be returned which is readable by TCPDF.
    $chset  : mixed
    Basic set of characters for each encodation mode.
    $chset_id  : mixed
    Map encodation modes whit character sets.
    $last_enc  : mixed
    Store last used encoding for data codewords.
    $symbattr  : mixed
    Table of Data Matrix ECC 200 Symbol Attributes:<ul> <li>total matrix rows (including finder pattern)</li> <li>total matrix cols (including finder pattern)</li> <li>total matrix rows (without finder pattern)</li> <li>total matrix cols (without finder pattern)</li> <li>region data rows (with finder pattern)</li> <li>region data col (with finder pattern)</li> <li>region data rows (without finder pattern)</li> <li>region data col (without finder pattern)</li> <li>horizontal regions</li> <li>vertical regions</li> <li>regions</li> <li>data codewords</li> <li>error codewords</li> <li>blocks</li> <li>data codewords per block</li> <li>error codewords per block</li> </ul>
    __construct()  : mixed
    This is the class constructor.
    getBarcodeArray()  : array<string|int, mixed>
    Returns a barcode array which is readable by TCPDF
    get253StateCodeword()  : int
    Return the 253-state codeword
    get255StateCodeword()  : int
    Return the 255-state codeword
    getErrorCorrection()  : array<string|int, mixed>
    Add error correction codewords to data codewords array (ANNEX E).
    getGFProduct()  : int
    Product of two numbers in a Power-of-Two Galois Field
    getHighLevelEncoding()  : array<string|int, mixed>
    Get high level encoding using the minimum symbol data characters for ECC 200
    getMaxDataCodewords()  : int
    Choose the minimum matrix size and return the max number of data codewords.
    getPlacementMap()  : array<string|int, mixed>
    Build a placement map.
    getSwitchEncodingCodeword()  : int
    Get the switching codeword to a new encoding mode (latch codeword)
    isCharMode()  : bool
    Returns true if the char belongs to the selected mode
    lookAheadTest()  : int
    The look-ahead test scans the data to be encoded to find the best mode (Annex P - steps from J to S).
    placeCornerA()  : array<string|int, mixed>
    Places the 8 bits of the first special corner case.
    placeCornerB()  : array<string|int, mixed>
    Places the 8 bits of the second special corner case.
    placeCornerC()  : array<string|int, mixed>
    Places the 8 bits of the third special corner case.
    placeCornerD()  : array<string|int, mixed>
    Places the 8 bits of the fourth special corner case.
    placeModule()  : array<string|int, mixed>
    Places "chr+bit" with appropriate wrapping within array[].
    placeUtah()  : array<string|int, mixed>
    Places the 8 bits of a utah-shaped symbol character.

    Properties

    $barcode_array

    Barcode array to be returned which is readable by TCPDF.

    protected mixed $barcode_array = array()
    Tags
    protected

    $chset

    Basic set of characters for each encodation mode.

    protected mixed $chset = array( 'C40' => array( // Basic set for C40 ---------------------------------------------------------------------------- 'S1' => 0x0, 'S2' => 0x1, 'S3' => 0x2, 0x20 => 0x3, 0x30 => 0x4, 0x31 => 0x5, 0x32 => 0x6, 0x33 => 0x7, 0x34 => 0x8, 0x35 => 0x9, // 0x36 => 0xa, 0x37 => 0xb, 0x38 => 0xc, 0x39 => 0xd, 0x41 => 0xe, 0x42 => 0xf, 0x43 => 0x10, 0x44 => 0x11, 0x45 => 0x12, 0x46 => 0x13, // 0x47 => 0x14, 0x48 => 0x15, 0x49 => 0x16, 0x4a => 0x17, 0x4b => 0x18, 0x4c => 0x19, 0x4d => 0x1a, 0x4e => 0x1b, 0x4f => 0x1c, 0x50 => 0x1d, // 0x51 => 0x1e, 0x52 => 0x1f, 0x53 => 0x20, 0x54 => 0x21, 0x55 => 0x22, 0x56 => 0x23, 0x57 => 0x24, 0x58 => 0x25, 0x59 => 0x26, 0x5a => 0x27, ), // 'TXT' => array( // Basic set for TEXT --------------------------------------------------------------------------- 'S1' => 0x0, 'S2' => 0x1, 'S3' => 0x2, 0x20 => 0x3, 0x30 => 0x4, 0x31 => 0x5, 0x32 => 0x6, 0x33 => 0x7, 0x34 => 0x8, 0x35 => 0x9, // 0x36 => 0xa, 0x37 => 0xb, 0x38 => 0xc, 0x39 => 0xd, 0x61 => 0xe, 0x62 => 0xf, 0x63 => 0x10, 0x64 => 0x11, 0x65 => 0x12, 0x66 => 0x13, // 0x67 => 0x14, 0x68 => 0x15, 0x69 => 0x16, 0x6a => 0x17, 0x6b => 0x18, 0x6c => 0x19, 0x6d => 0x1a, 0x6e => 0x1b, 0x6f => 0x1c, 0x70 => 0x1d, // 0x71 => 0x1e, 0x72 => 0x1f, 0x73 => 0x20, 0x74 => 0x21, 0x75 => 0x22, 0x76 => 0x23, 0x77 => 0x24, 0x78 => 0x25, 0x79 => 0x26, 0x7a => 0x27, ), // 'SH1' => array( // Shift 1 set ---------------------------------------------------------------------------------- 0x0 => 0x0, 0x1 => 0x1, 0x2 => 0x2, 0x3 => 0x3, 0x4 => 0x4, 0x5 => 0x5, 0x6 => 0x6, 0x7 => 0x7, 0x8 => 0x8, 0x9 => 0x9, // 0xa => 0xa, 0xb => 0xb, 0xc => 0xc, 0xd => 0xd, 0xe => 0xe, 0xf => 0xf, 0x10 => 0x10, 0x11 => 0x11, 0x12 => 0x12, 0x13 => 0x13, // 0x14 => 0x14, 0x15 => 0x15, 0x16 => 0x16, 0x17 => 0x17, 0x18 => 0x18, 0x19 => 0x19, 0x1a => 0x1a, 0x1b => 0x1b, 0x1c => 0x1c, 0x1d => 0x1d, // 0x1e => 0x1e, 0x1f => 0x1f, ), // 'SH2' => array( // Shift 2 set ---------------------------------------------------------------------------------- 0x21 => 0x0, 0x22 => 0x1, 0x23 => 0x2, 0x24 => 0x3, 0x25 => 0x4, 0x26 => 0x5, 0x27 => 0x6, 0x28 => 0x7, 0x29 => 0x8, 0x2a => 0x9, // 0x2b => 0xa, 0x2c => 0xb, 0x2d => 0xc, 0x2e => 0xd, 0x2f => 0xe, 0x3a => 0xf, 0x3b => 0x10, 0x3c => 0x11, 0x3d => 0x12, 0x3e => 0x13, // 0x3f => 0x14, 0x40 => 0x15, 0x5b => 0x16, 0x5c => 0x17, 0x5d => 0x18, 0x5e => 0x19, 0x5f => 0x1a, 'F1' => 0x1b, 'US' => 0x1e, ), // 'S3C' => array( // Shift 3 set for C40 -------------------------------------------------------------------------- 0x60 => 0x0, 0x61 => 0x1, 0x62 => 0x2, 0x63 => 0x3, 0x64 => 0x4, 0x65 => 0x5, 0x66 => 0x6, 0x67 => 0x7, 0x68 => 0x8, 0x69 => 0x9, // 0x6a => 0xa, 0x6b => 0xb, 0x6c => 0xc, 0x6d => 0xd, 0x6e => 0xe, 0x6f => 0xf, 0x70 => 0x10, 0x71 => 0x11, 0x72 => 0x12, 0x73 => 0x13, // 0x74 => 0x14, 0x75 => 0x15, 0x76 => 0x16, 0x77 => 0x17, 0x78 => 0x18, 0x79 => 0x19, 0x7a => 0x1a, 0x7b => 0x1b, 0x7c => 0x1c, 0x7d => 0x1d, // 0x7e => 0x1e, 0x7f => 0x1f, ), 'S3T' => array( // Shift 3 set for TEXT ------------------------------------------------------------------------- 0x60 => 0x0, 0x41 => 0x1, 0x42 => 0x2, 0x43 => 0x3, 0x44 => 0x4, 0x45 => 0x5, 0x46 => 0x6, 0x47 => 0x7, 0x48 => 0x8, 0x49 => 0x9, // 0x4a => 0xa, 0x4b => 0xb, 0x4c => 0xc, 0x4d => 0xd, 0x4e => 0xe, 0x4f => 0xf, 0x50 => 0x10, 0x51 => 0x11, 0x52 => 0x12, 0x53 => 0x13, // 0x54 => 0x14, 0x55 => 0x15, 0x56 => 0x16, 0x57 => 0x17, 0x58 => 0x18, 0x59 => 0x19, 0x5a => 0x1a, 0x7b => 0x1b, 0x7c => 0x1c, 0x7d => 0x1d, // 0x7e => 0x1e, 0x7f => 0x1f, ), // 'X12' => array( // Set for X12 ---------------------------------------------------------------------------------- 0xd => 0x0, 0x2a => 0x1, 0x3e => 0x2, 0x20 => 0x3, 0x30 => 0x4, 0x31 => 0x5, 0x32 => 0x6, 0x33 => 0x7, 0x34 => 0x8, 0x35 => 0x9, // 0x36 => 0xa, 0x37 => 0xb, 0x38 => 0xc, 0x39 => 0xd, 0x41 => 0xe, 0x42 => 0xf, 0x43 => 0x10, 0x44 => 0x11, 0x45 => 0x12, 0x46 => 0x13, // 0x47 => 0x14, 0x48 => 0x15, 0x49 => 0x16, 0x4a => 0x17, 0x4b => 0x18, 0x4c => 0x19, 0x4d => 0x1a, 0x4e => 0x1b, 0x4f => 0x1c, 0x50 => 0x1d, // 0x51 => 0x1e, 0x52 => 0x1f, 0x53 => 0x20, 0x54 => 0x21, 0x55 => 0x22, 0x56 => 0x23, 0x57 => 0x24, 0x58 => 0x25, 0x59 => 0x26, 0x5a => 0x27, ), )
    Tags
    protected

    $chset_id

    Map encodation modes whit character sets.

    protected mixed $chset_id = array(\ENC_C40 => 'C40', \ENC_TXT => 'TXT', \ENC_X12 => 'X12')
    Tags
    protected

    $last_enc

    Store last used encoding for data codewords.

    protected mixed $last_enc = \ENC_ASCII
    Tags
    protected

    $symbattr

    Table of Data Matrix ECC 200 Symbol Attributes:<ul> <li>total matrix rows (including finder pattern)</li> <li>total matrix cols (including finder pattern)</li> <li>total matrix rows (without finder pattern)</li> <li>total matrix cols (without finder pattern)</li> <li>region data rows (with finder pattern)</li> <li>region data col (with finder pattern)</li> <li>region data rows (without finder pattern)</li> <li>region data col (without finder pattern)</li> <li>horizontal regions</li> <li>vertical regions</li> <li>regions</li> <li>data codewords</li> <li>error codewords</li> <li>blocks</li> <li>data codewords per block</li> <li>error codewords per block</li> </ul>

    protected mixed $symbattr = array( // square form --------------------------------------------------------------------------------------- array(0xa, 0xa, 0x8, 0x8, 0xa, 0xa, 0x8, 0x8, 0x1, 0x1, 0x1, 0x3, 0x5, 0x1, 0x3, 0x5), // 10x10 array(0xc, 0xc, 0xa, 0xa, 0xc, 0xc, 0xa, 0xa, 0x1, 0x1, 0x1, 0x5, 0x7, 0x1, 0x5, 0x7), // 12x12 array(0xe, 0xe, 0xc, 0xc, 0xe, 0xe, 0xc, 0xc, 0x1, 0x1, 0x1, 0x8, 0xa, 0x1, 0x8, 0xa), // 14x14 array(0x10, 0x10, 0xe, 0xe, 0x10, 0x10, 0xe, 0xe, 0x1, 0x1, 0x1, 0xc, 0xc, 0x1, 0xc, 0xc), // 16x16 array(0x12, 0x12, 0x10, 0x10, 0x12, 0x12, 0x10, 0x10, 0x1, 0x1, 0x1, 0x12, 0xe, 0x1, 0x12, 0xe), // 18x18 array(0x14, 0x14, 0x12, 0x12, 0x14, 0x14, 0x12, 0x12, 0x1, 0x1, 0x1, 0x16, 0x12, 0x1, 0x16, 0x12), // 20x20 array(0x16, 0x16, 0x14, 0x14, 0x16, 0x16, 0x14, 0x14, 0x1, 0x1, 0x1, 0x1e, 0x14, 0x1, 0x1e, 0x14), // 22x22 array(0x18, 0x18, 0x16, 0x16, 0x18, 0x18, 0x16, 0x16, 0x1, 0x1, 0x1, 0x24, 0x18, 0x1, 0x24, 0x18), // 24x24 array(0x1a, 0x1a, 0x18, 0x18, 0x1a, 0x1a, 0x18, 0x18, 0x1, 0x1, 0x1, 0x2c, 0x1c, 0x1, 0x2c, 0x1c), // 26x26 array(0x20, 0x20, 0x1c, 0x1c, 0x10, 0x10, 0xe, 0xe, 0x2, 0x2, 0x4, 0x3e, 0x24, 0x1, 0x3e, 0x24), // 32x32 array(0x24, 0x24, 0x20, 0x20, 0x12, 0x12, 0x10, 0x10, 0x2, 0x2, 0x4, 0x56, 0x2a, 0x1, 0x56, 0x2a), // 36x36 array(0x28, 0x28, 0x24, 0x24, 0x14, 0x14, 0x12, 0x12, 0x2, 0x2, 0x4, 0x72, 0x30, 0x1, 0x72, 0x30), // 40x40 array(0x2c, 0x2c, 0x28, 0x28, 0x16, 0x16, 0x14, 0x14, 0x2, 0x2, 0x4, 0x90, 0x38, 0x1, 0x90, 0x38), // 44x44 array(0x30, 0x30, 0x2c, 0x2c, 0x18, 0x18, 0x16, 0x16, 0x2, 0x2, 0x4, 0xae, 0x44, 0x1, 0xae, 0x44), // 48x48 array(0x34, 0x34, 0x30, 0x30, 0x1a, 0x1a, 0x18, 0x18, 0x2, 0x2, 0x4, 0xcc, 0x54, 0x2, 0x66, 0x2a), // 52x52 array(0x40, 0x40, 0x38, 0x38, 0x10, 0x10, 0xe, 0xe, 0x4, 0x4, 0x10, 0x118, 0x70, 0x2, 0x8c, 0x38), // 64x64 array(0x48, 0x48, 0x40, 0x40, 0x12, 0x12, 0x10, 0x10, 0x4, 0x4, 0x10, 0x170, 0x90, 0x4, 0x5c, 0x24), // 72x72 array(0x50, 0x50, 0x48, 0x48, 0x14, 0x14, 0x12, 0x12, 0x4, 0x4, 0x10, 0x1c8, 0xc0, 0x4, 0x72, 0x30), // 80x80 array(0x58, 0x58, 0x50, 0x50, 0x16, 0x16, 0x14, 0x14, 0x4, 0x4, 0x10, 0x240, 0xe0, 0x4, 0x90, 0x38), // 88x88 array(0x60, 0x60, 0x58, 0x58, 0x18, 0x18, 0x16, 0x16, 0x4, 0x4, 0x10, 0x2b8, 0x110, 0x4, 0xae, 0x44), // 96x96 array(0x68, 0x68, 0x60, 0x60, 0x1a, 0x1a, 0x18, 0x18, 0x4, 0x4, 0x10, 0x330, 0x150, 0x6, 0x88, 0x38), // 104x104 array(0x78, 0x78, 0x6c, 0x6c, 0x14, 0x14, 0x12, 0x12, 0x6, 0x6, 0x24, 0x41a, 0x198, 0x6, 0xaf, 0x44), // 120x120 array(0x84, 0x84, 0x78, 0x78, 0x16, 0x16, 0x14, 0x14, 0x6, 0x6, 0x24, 0x518, 0x1f0, 0x8, 0xa3, 0x3e), // 132x132 array(0x90, 0x90, 0x84, 0x84, 0x18, 0x18, 0x16, 0x16, 0x6, 0x6, 0x24, 0x616, 0x26c, 0xa, 0x9c, 0x3e), // 144x144 // rectangular form (currently unused) --------------------------------------------------------------------------- array(0x8, 0x12, 0x6, 0x10, 0x8, 0x12, 0x6, 0x10, 0x1, 0x1, 0x1, 0x5, 0x7, 0x1, 0x5, 0x7), // 8x18 array(0x8, 0x20, 0x6, 0x1c, 0x8, 0x10, 0x6, 0xe, 0x1, 0x2, 0x2, 0xa, 0xb, 0x1, 0xa, 0xb), // 8x32 array(0xc, 0x1a, 0xa, 0x18, 0xc, 0x1a, 0xa, 0x18, 0x1, 0x1, 0x1, 0x10, 0xe, 0x1, 0x10, 0xe), // 12x26 array(0xc, 0x24, 0xa, 0x20, 0xc, 0x12, 0xa, 0x10, 0x1, 0x2, 0x2, 0xc, 0x12, 0x1, 0xc, 0x12), // 12x36 array(0x10, 0x24, 0xe, 0x20, 0x10, 0x12, 0xe, 0x10, 0x1, 0x2, 0x2, 0x20, 0x18, 0x1, 0x20, 0x18), // 16x36 array(0x10, 0x30, 0xe, 0x2c, 0x10, 0x18, 0xe, 0x16, 0x1, 0x2, 0x2, 0x31, 0x1c, 0x1, 0x31, 0x1c), )
    Tags
    protected

    Methods

    __construct()

    This is the class constructor.

    public __construct(string $code) : mixed

    Creates a datamatrix object

    Parameters
    $code : string

    Code to represent using Datamatrix.

    Tags
    public
    Return values
    mixed

    getBarcodeArray()

    Returns a barcode array which is readable by TCPDF

    public getBarcodeArray() : array<string|int, mixed>
    Tags
    public
    Return values
    array<string|int, mixed>

    barcode array readable by TCPDF;

    get253StateCodeword()

    Return the 253-state codeword

    protected get253StateCodeword(int $cwpad, int $cwpos) : int
    Parameters
    $cwpad : int

    Pad codeword.

    $cwpos : int

    Number of data codewords from the beginning of encoded data.

    Tags
    protected
    Return values
    int

    pad codeword

    get255StateCodeword()

    Return the 255-state codeword

    protected get255StateCodeword(int $cwpad, int $cwpos) : int
    Parameters
    $cwpad : int

    Pad codeword.

    $cwpos : int

    Number of data codewords from the beginning of encoded data.

    Tags
    protected
    Return values
    int

    pad codeword

    getErrorCorrection()

    Add error correction codewords to data codewords array (ANNEX E).

    protected getErrorCorrection(array<string|int, mixed> $wd, int $nb, int $nd, int $nc[, int $gf = 256 ][, int $pp = 301 ]) : array<string|int, mixed>
    Parameters
    $wd : array<string|int, mixed>

    Array of datacodewords.

    $nb : int

    Number of blocks.

    $nd : int

    Number of data codewords per block.

    $nc : int

    Number of correction codewords per block.

    $gf : int = 256

    numner of fields on log/antilog table (power of 2).

    $pp : int = 301

    The value of its prime modulus polynomial (301 for ECC200).

    Tags
    protected
    Return values
    array<string|int, mixed>

    data codewords + error codewords

    getGFProduct()

    Product of two numbers in a Power-of-Two Galois Field

    protected getGFProduct(int $a, int $b, array<string|int, mixed> $log, array<string|int, mixed> $alog, int $gf) : int
    Parameters
    $a : int

    first number to multiply.

    $b : int

    second number to multiply.

    $log : array<string|int, mixed>

    Log table.

    $alog : array<string|int, mixed>

    Anti-Log table.

    $gf : int

    Number of Factors of the Reed-Solomon polynomial.

    Tags
    protected
    Return values
    int

    product

    getHighLevelEncoding()

    Get high level encoding using the minimum symbol data characters for ECC 200

    protected getHighLevelEncoding(string $data) : array<string|int, mixed>
    Parameters
    $data : string

    data to encode

    Tags
    protected
    Return values
    array<string|int, mixed>

    of codewords

    getMaxDataCodewords()

    Choose the minimum matrix size and return the max number of data codewords.

    protected getMaxDataCodewords(int $numcw) : int
    Parameters
    $numcw : int

    Number of current codewords.

    Tags
    protected
    Return values
    int

    number of data codewords in matrix

    getPlacementMap()

    Build a placement map.

    protected getPlacementMap(int $nrow, int $ncol) : array<string|int, mixed>

    (Annex F - ECC 200 symbol character placement)

    Parameters
    $nrow : int

    Number of rows.

    $ncol : int

    Number of columns.

    Tags
    protected
    Return values
    array<string|int, mixed>

    getSwitchEncodingCodeword()

    Get the switching codeword to a new encoding mode (latch codeword)

    protected getSwitchEncodingCodeword(int $mode) : int
    Parameters
    $mode : int

    New encoding mode.

    Tags
    protected
    Return values
    int

    Switch codeword.

    isCharMode()

    Returns true if the char belongs to the selected mode

    protected isCharMode(int $chr, int $mode) : bool
    Parameters
    $chr : int

    Character (byte) to check.

    $mode : int

    Current encoding mode.

    Tags
    protected
    Return values
    bool

    true if the char is of the selected mode.

    lookAheadTest()

    The look-ahead test scans the data to be encoded to find the best mode (Annex P - steps from J to S).

    protected lookAheadTest(string $data, int $pos, int $mode) : int
    Parameters
    $data : string

    data to encode

    $pos : int

    current position

    $mode : int

    current encoding mode

    Tags
    protected
    Return values
    int

    encoding mode

    placeCornerA()

    Places the 8 bits of the first special corner case.

    protected placeCornerA(array<string|int, mixed> $marr, int $nrow, int $ncol, int $chr) : array<string|int, mixed>

    (Annex F - ECC 200 symbol character placement)

    Parameters
    $marr : array<string|int, mixed>

    Array of symbols.

    $nrow : int

    Number of rows.

    $ncol : int

    Number of columns.

    $chr : int

    Char byte.

    Tags
    protected
    Return values
    array<string|int, mixed>

    placeCornerB()

    Places the 8 bits of the second special corner case.

    protected placeCornerB(array<string|int, mixed> $marr, int $nrow, int $ncol, int $chr) : array<string|int, mixed>

    (Annex F - ECC 200 symbol character placement)

    Parameters
    $marr : array<string|int, mixed>

    Array of symbols.

    $nrow : int

    Number of rows.

    $ncol : int

    Number of columns.

    $chr : int

    Char byte.

    Tags
    protected
    Return values
    array<string|int, mixed>

    placeCornerC()

    Places the 8 bits of the third special corner case.

    protected placeCornerC(array<string|int, mixed> $marr, int $nrow, int $ncol, int $chr) : array<string|int, mixed>

    (Annex F - ECC 200 symbol character placement)

    Parameters
    $marr : array<string|int, mixed>

    Array of symbols.

    $nrow : int

    Number of rows.

    $ncol : int

    Number of columns.

    $chr : int

    Char byte.

    Tags
    protected
    Return values
    array<string|int, mixed>

    placeCornerD()

    Places the 8 bits of the fourth special corner case.

    protected placeCornerD(array<string|int, mixed> $marr, int $nrow, int $ncol, int $chr) : array<string|int, mixed>

    (Annex F - ECC 200 symbol character placement)

    Parameters
    $marr : array<string|int, mixed>

    Array of symbols.

    $nrow : int

    Number of rows.

    $ncol : int

    Number of columns.

    $chr : int

    Char byte.

    Tags
    protected
    Return values
    array<string|int, mixed>

    placeModule()

    Places "chr+bit" with appropriate wrapping within array[].

    protected placeModule(array<string|int, mixed> $marr, int $nrow, int $ncol, int $row, int $col, int $chr, int $bit) : array<string|int, mixed>

    (Annex F - ECC 200 symbol character placement)

    Parameters
    $marr : array<string|int, mixed>

    Array of symbols.

    $nrow : int

    Number of rows.

    $ncol : int

    Number of columns.

    $row : int

    Row number.

    $col : int

    Column number.

    $chr : int

    Char byte.

    $bit : int

    Bit.

    Tags
    protected
    Return values
    array<string|int, mixed>

    placeUtah()

    Places the 8 bits of a utah-shaped symbol character.

    protected placeUtah(array<string|int, mixed> $marr, int $nrow, int $ncol, int $row, int $col, int $chr) : array<string|int, mixed>

    (Annex F - ECC 200 symbol character placement)

    Parameters
    $marr : array<string|int, mixed>

    Array of symbols.

    $nrow : int

    Number of rows.

    $ncol : int

    Number of columns.

    $row : int

    Row number.

    $col : int

    Column number.

    $chr : int

    Char byte.

    Tags
    protected
    Return values
    array<string|int, mixed>
     

    © 2004-2023 – Nicola Asuni - Tecnick.com - All rights reserved.
    about - disclaimer - privacy