UNPKG

@zxing/library

Version:

TypeScript port of ZXing multi-format 1D/2D barcode image processing library.

19 lines (18 loc) 906 B
import AI01decoder from './AI01decoder'; import StringBuilder from '../../../../util/StringBuilder'; export default class AI01AndOtherAIs extends AI01decoder { // the second one is the encodation method, and the other two are for the variable length constructor(information) { super(information); } parseInformation() { let buff = new StringBuilder(); buff.append('(01)'); let initialGtinPosition = buff.length(); let firstGtinDigit = this.getGeneralDecoder().extractNumericValueFromBitArray(AI01AndOtherAIs.HEADER_SIZE, 4); buff.append(firstGtinDigit); this.encodeCompressedGtinWithoutAI(buff, AI01AndOtherAIs.HEADER_SIZE + 4, initialGtinPosition); return this.getGeneralDecoder().decodeAllCodes(buff, AI01AndOtherAIs.HEADER_SIZE + 44); } } AI01AndOtherAIs.HEADER_SIZE = 1 + 1 + 2; // first bit encodes the linkage flag,