Do you have a list of the Code 128 bitpattern?

Yes. Here is a Code 128 bar pattern array in C-style format. The sequence is: value for Code A, value for Code B, value for Code C, followed by the bar pattern (alternating bars, spaces).

unsigned char c128_bp[106][9] =
{
  {' ',' ',0,2,1,2,2,2,2},
  {'!','!',1,2,2,2,1,2,2},
  {'"','"',2,2,2,2,2,2,1},
  {'#','#',3,1,2,1,2,2,3},
  {'$','$',4,1,2,1,3,2,2},
  {'%','%',5,1,3,1,2,2,2},
  {'&','&',6,1,2,2,2,1,3},
  {'\'','\'',7,1,2,2,3,1,2},
  {'(','(',8,1,3,2,2,1,2},
  {')',')',9,2,2,1,2,1,3},
  {'*','*',10,2,2,1,3,1,2},
  {'+','+',11,2,3,1,2,1,2},
  {',',',',12,1,1,2,2,3,2},
  {'-','-',13,1,2,2,1,3,2},
  {'.','.',14,1,2,2,2,3,1},
  {'/','/',15,1,1,3,2,2,2},
  {'0','0',16,1,2,3,1,2,2},
  {'1','1',17,1,2,3,2,2,1},
  {'2','2',18,2,2,3,2,1,1},
  {'3','3',19,2,2,1,1,3,2},
  {'4','4',20,2,2,1,2,3,1},
  {'5','5',21,2,1,3,2,1,2},
  {'6','6',22,2,2,3,1,1,2},
  {'7','7',23,3,1,2,1,3,1},
  {'8','8',24,3,1,1,2,2,2},
  {'9','9',25,3,2,1,1,2,2},
  {':',':',26,3,2,1,2,2,1},
  {';',';',27,3,1,2,2,1,2},
  {'<','<',28,3,2,2,1,1,2},
  {'=','=',29,3,2,2,2,1,1},
  {'>','>',30,2,1,2,1,2,3},
  {'?','?',31,2,1,2,3,2,1},
  {'@','@',32,2,3,2,1,2,1},
  {'A','A',33,1,1,1,3,2,3},
  {'B','B',34,1,3,1,1,2,3},
  {'C','C',35,1,3,1,3,2,1},
  {'D','D',36,1,1,2,3,1,3},
  {'E','E',37,1,3,2,1,1,3},
  {'F','F',38,1,3,2,3,1,1},
  {'G','G',39,2,1,1,3,1,3},
  {'H','H',40,2,3,1,1,1,3},
  {'I','I',41,2,3,1,3,1,1},
  {'J','J',42,1,1,2,1,3,3},
  {'K','K',43,1,1,2,3,3,1},
  {'L','L',44,1,3,2,1,3,1},
  {'M','M',45,1,1,3,1,2,3},
  {'N','N',46,1,1,3,3,2,1},
  {'O','O',47,1,3,3,1,2,1},
  {'P','P',48,3,1,3,1,2,1},
  {'Q','Q',49,2,1,1,3,3,1},
  {'R','R',50,2,3,1,1,3,1},
  {'S','S',51,2,1,3,1,1,3},
  {'T','T',52,2,1,3,3,1,1},
  {'U','U',53,2,1,3,1,3,1},
  {'V','V',54,3,1,1,1,2,3},
  {'W','W',55,3,1,1,3,2,1},
  {'X','X',56,3,3,1,1,2,1},
  {'Y','Y',57,3,1,2,1,1,3},
  {'Z','Z',58,3,1,2,3,1,1},
  {'[','[',59,3,3,2,1,1,1},
  {'\\','\\',60,3,1,4,1,1,1},
  {']',']',61,2,2,1,4,1,1},
  {'^','^',62,4,3,1,1,1,1},
  {'_','_',63,1,1,1,2,2,4},
  {NUL,'`',64,1,1,1,4,2,2},
  {SOH,'a',65,1,2,1,1,2,4},
  {STX,'b',66,1,2,1,4,2,1},
  {ETX,'c',67,1,4,1,1,2,2},
  {EOT,'d',68,1,4,1,2,2,1},
  {ENQ,'e',69,1,1,2,2,1,4},
  {ACK,'f',70,1,1,2,4,1,2},
  {BEL,'g',71,1,2,2,1,1,4},
  {BS,'h',72,1,2,2,4,1,1},
  {HT,'i',73,1,4,2,1,1,2},
  {LF,'j',74,1,4,2,2,1,1},
  {VT,'k',75,2,4,1,2,1,1},
  {FF,'l',76,2,2,1,1,1,4},
  {CR,'m',77,4,1,3,1,1,1},
  {SO,'n',78,2,4,1,1,1,2},
  {SI,'o',79,1,3,4,1,1,1},
  {DLE,'p',80,1,1,1,2,4,2},
  {DC1,'q',81,1,2,1,1,4,2},
  {DC2,'r',82,1,2,1,2,4,1},
  {DC3,'s',83,1,1,4,2,1,2},
  {DC4,'t',84,1,2,4,1,1,2},
  {NAK,'u',85,1,2,4,2,1,1},
  {SYN,'v',86,4,1,1,2,1,2},
  {ETB,'w',87,4,2,1,1,1,2},
  {CAN,'x',88,4,2,1,2,1,1},
  {EM,'y',89,2,1,2,1,4,1},
  {SUB,'z',90,2,1,4,1,2,1},
  {ESC,'{',91,4,1,2,1,2,1},
  {FS,'|',92,1,1,1,1,4,3},
  {GS,'}',93,1,1,1,3,4,1},
  {RS,'~',94,1,3,1,1,4,1},
  {US,DEL,95,1,1,4,1,1,3},
  {FNC3,FNC3,96,1,1,4,3,1,1},
  {FNC2,FNC2,97,4,1,1,1,1,3},
  {SHIFT,SHIFT,98,4,1,1,3,1,1},
  {CODE_C,CODE_C,99,1,1,3,1,4,1},
  {CODE_B,FNC4_B,CODE_B,1,1,4,1,3,1},
  {FNC4_A,CODE_A,CODE_A,3,1,1,1,4,1},
  {FNC1,FNC1,FNC1,4,1,1,1,3,1},
  {START_A,START_A,START_A,2,1,1,4,1,2},
  {START_B,START_B,START_B,2,1,1,2,1,4},
  {START_C,START_C,START_C,2,1,1,2,3,2}
};

// Stop

unsigned char c128_stop[7] =   {2,3,3,1,1,1,2};


Developers: Make sure to see our .NET barcode SDK!