git.sr.ht/~pingoo/stdx@v0.0.0-20240218134121-094174641f6e/barcode/code128/encodingtable.go (about)

     1  package code128
     2  
     3  var encodingTable = [107][]bool{
     4  	[]bool{true, true, false, true, true, false, false, true, true, false, false},
     5  	[]bool{true, true, false, false, true, true, false, true, true, false, false},
     6  	[]bool{true, true, false, false, true, true, false, false, true, true, false},
     7  	[]bool{true, false, false, true, false, false, true, true, false, false, false},
     8  	[]bool{true, false, false, true, false, false, false, true, true, false, false},
     9  	[]bool{true, false, false, false, true, false, false, true, true, false, false},
    10  	[]bool{true, false, false, true, true, false, false, true, false, false, false},
    11  	[]bool{true, false, false, true, true, false, false, false, true, false, false},
    12  	[]bool{true, false, false, false, true, true, false, false, true, false, false},
    13  	[]bool{true, true, false, false, true, false, false, true, false, false, false},
    14  	[]bool{true, true, false, false, true, false, false, false, true, false, false},
    15  	[]bool{true, true, false, false, false, true, false, false, true, false, false},
    16  	[]bool{true, false, true, true, false, false, true, true, true, false, false},
    17  	[]bool{true, false, false, true, true, false, true, true, true, false, false},
    18  	[]bool{true, false, false, true, true, false, false, true, true, true, false},
    19  	[]bool{true, false, true, true, true, false, false, true, true, false, false},
    20  	[]bool{true, false, false, true, true, true, false, true, true, false, false},
    21  	[]bool{true, false, false, true, true, true, false, false, true, true, false},
    22  	[]bool{true, true, false, false, true, true, true, false, false, true, false},
    23  	[]bool{true, true, false, false, true, false, true, true, true, false, false},
    24  	[]bool{true, true, false, false, true, false, false, true, true, true, false},
    25  	[]bool{true, true, false, true, true, true, false, false, true, false, false},
    26  	[]bool{true, true, false, false, true, true, true, false, true, false, false},
    27  	[]bool{true, true, true, false, true, true, false, true, true, true, false},
    28  	[]bool{true, true, true, false, true, false, false, true, true, false, false},
    29  	[]bool{true, true, true, false, false, true, false, true, true, false, false},
    30  	[]bool{true, true, true, false, false, true, false, false, true, true, false},
    31  	[]bool{true, true, true, false, true, true, false, false, true, false, false},
    32  	[]bool{true, true, true, false, false, true, true, false, true, false, false},
    33  	[]bool{true, true, true, false, false, true, true, false, false, true, false},
    34  	[]bool{true, true, false, true, true, false, true, true, false, false, false},
    35  	[]bool{true, true, false, true, true, false, false, false, true, true, false},
    36  	[]bool{true, true, false, false, false, true, true, false, true, true, false},
    37  	[]bool{true, false, true, false, false, false, true, true, false, false, false},
    38  	[]bool{true, false, false, false, true, false, true, true, false, false, false},
    39  	[]bool{true, false, false, false, true, false, false, false, true, true, false},
    40  	[]bool{true, false, true, true, false, false, false, true, false, false, false},
    41  	[]bool{true, false, false, false, true, true, false, true, false, false, false},
    42  	[]bool{true, false, false, false, true, true, false, false, false, true, false},
    43  	[]bool{true, true, false, true, false, false, false, true, false, false, false},
    44  	[]bool{true, true, false, false, false, true, false, true, false, false, false},
    45  	[]bool{true, true, false, false, false, true, false, false, false, true, false},
    46  	[]bool{true, false, true, true, false, true, true, true, false, false, false},
    47  	[]bool{true, false, true, true, false, false, false, true, true, true, false},
    48  	[]bool{true, false, false, false, true, true, false, true, true, true, false},
    49  	[]bool{true, false, true, true, true, false, true, true, false, false, false},
    50  	[]bool{true, false, true, true, true, false, false, false, true, true, false},
    51  	[]bool{true, false, false, false, true, true, true, false, true, true, false},
    52  	[]bool{true, true, true, false, true, true, true, false, true, true, false},
    53  	[]bool{true, true, false, true, false, false, false, true, true, true, false},
    54  	[]bool{true, true, false, false, false, true, false, true, true, true, false},
    55  	[]bool{true, true, false, true, true, true, false, true, false, false, false},
    56  	[]bool{true, true, false, true, true, true, false, false, false, true, false},
    57  	[]bool{true, true, false, true, true, true, false, true, true, true, false},
    58  	[]bool{true, true, true, false, true, false, true, true, false, false, false},
    59  	[]bool{true, true, true, false, true, false, false, false, true, true, false},
    60  	[]bool{true, true, true, false, false, false, true, false, true, true, false},
    61  	[]bool{true, true, true, false, true, true, false, true, false, false, false},
    62  	[]bool{true, true, true, false, true, true, false, false, false, true, false},
    63  	[]bool{true, true, true, false, false, false, true, true, false, true, false},
    64  	[]bool{true, true, true, false, true, true, true, true, false, true, false},
    65  	[]bool{true, true, false, false, true, false, false, false, false, true, false},
    66  	[]bool{true, true, true, true, false, false, false, true, false, true, false},
    67  	[]bool{true, false, true, false, false, true, true, false, false, false, false},
    68  	[]bool{true, false, true, false, false, false, false, true, true, false, false},
    69  	[]bool{true, false, false, true, false, true, true, false, false, false, false},
    70  	[]bool{true, false, false, true, false, false, false, false, true, true, false},
    71  	[]bool{true, false, false, false, false, true, false, true, true, false, false},
    72  	[]bool{true, false, false, false, false, true, false, false, true, true, false},
    73  	[]bool{true, false, true, true, false, false, true, false, false, false, false},
    74  	[]bool{true, false, true, true, false, false, false, false, true, false, false},
    75  	[]bool{true, false, false, true, true, false, true, false, false, false, false},
    76  	[]bool{true, false, false, true, true, false, false, false, false, true, false},
    77  	[]bool{true, false, false, false, false, true, true, false, true, false, false},
    78  	[]bool{true, false, false, false, false, true, true, false, false, true, false},
    79  	[]bool{true, true, false, false, false, false, true, false, false, true, false},
    80  	[]bool{true, true, false, false, true, false, true, false, false, false, false},
    81  	[]bool{true, true, true, true, false, true, true, true, false, true, false},
    82  	[]bool{true, true, false, false, false, false, true, false, true, false, false},
    83  	[]bool{true, false, false, false, true, true, true, true, false, true, false},
    84  	[]bool{true, false, true, false, false, true, true, true, true, false, false},
    85  	[]bool{true, false, false, true, false, true, true, true, true, false, false},
    86  	[]bool{true, false, false, true, false, false, true, true, true, true, false},
    87  	[]bool{true, false, true, true, true, true, false, false, true, false, false},
    88  	[]bool{true, false, false, true, true, true, true, false, true, false, false},
    89  	[]bool{true, false, false, true, true, true, true, false, false, true, false},
    90  	[]bool{true, true, true, true, false, true, false, false, true, false, false},
    91  	[]bool{true, true, true, true, false, false, true, false, true, false, false},
    92  	[]bool{true, true, true, true, false, false, true, false, false, true, false},
    93  	[]bool{true, true, false, true, true, false, true, true, true, true, false},
    94  	[]bool{true, true, false, true, true, true, true, false, true, true, false},
    95  	[]bool{true, true, true, true, false, true, true, false, true, true, false},
    96  	[]bool{true, false, true, false, true, true, true, true, false, false, false},
    97  	[]bool{true, false, true, false, false, false, true, true, true, true, false},
    98  	[]bool{true, false, false, false, true, false, true, true, true, true, false},
    99  	[]bool{true, false, true, true, true, true, false, true, false, false, false},
   100  	[]bool{true, false, true, true, true, true, false, false, false, true, false},
   101  	[]bool{true, true, true, true, false, true, false, true, false, false, false},
   102  	[]bool{true, true, true, true, false, true, false, false, false, true, false},
   103  	[]bool{true, false, true, true, true, false, true, true, true, true, false},
   104  	[]bool{true, false, true, true, true, true, false, true, true, true, false},
   105  	[]bool{true, true, true, false, true, false, true, true, true, true, false},
   106  	[]bool{true, true, true, true, false, true, false, true, true, true, false},
   107  	[]bool{true, true, false, true, false, false, false, false, true, false, false},
   108  	[]bool{true, true, false, true, false, false, true, false, false, false, false},
   109  	[]bool{true, true, false, true, false, false, true, true, true, false, false},
   110  	[]bool{true, true, false, false, false, true, true, true, false, true, false, true, true},
   111  }
   112  
   113  const startASymbol byte = 103
   114  const startBSymbol byte = 104
   115  const startCSymbol byte = 105
   116  
   117  const codeASymbol byte = 101
   118  const codeBSymbol byte = 100
   119  const codeCSymbol byte = 99
   120  
   121  const stopSymbol byte = 106
   122  
   123  const (
   124  	// FNC1 - Special Function 1
   125  	FNC1 = '\u00f1'
   126  	// FNC2 - Special Function 2
   127  	FNC2 = '\u00f2'
   128  	// FNC3 - Special Function 3
   129  	FNC3 = '\u00f3'
   130  	// FNC4 - Special Function 4
   131  	FNC4 = '\u00f4'
   132  )
   133  
   134  const abTable = " !\"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_"
   135  const bTable = abTable + "`abcdefghijklmnopqrstuvwxyz{|}~\u007F"
   136  const aOnlyTable = "\u0000\u0001\u0002\u0003\u0004" + // NUL, SOH, STX, ETX, EOT
   137  	"\u0005\u0006\u0007\u0008\u0009" + // ENQ, ACK, BEL, BS,  HT
   138  	"\u000A\u000B\u000C\u000D\u000E" + // LF,  VT,  FF,  CR,  SO
   139  	"\u000F\u0010\u0011\u0012\u0013" + // SI,  DLE, DC1, DC2, DC3
   140  	"\u0014\u0015\u0016\u0017\u0018" + // DC4, NAK, SYN, ETB, CAN
   141  	"\u0019\u001A\u001B\u001C\u001D" + // EM,  SUB, ESC, FS,  GS
   142  	"\u001E\u001F" // RS,  US
   143  const aTable = abTable + aOnlyTable