public abstract class UPCEANReader extends OneDReader
Encapsulates functionality and implementation that is common to UPC and EAN families of one-dimensional barcodes.
| Modifier | Constructor and Description |
|---|---|
protected |
UPCEANReader() |
| Modifier and Type | Method and Description |
|---|---|
protected abstract int |
decodeMiddle(BitArray row,
int[] startRange,
StringBuilder resultString)
Subclasses override this to decode the portion of a barcode between the start
and end guard patterns.
|
Result |
decodeRow(int rowNumber,
BitArray row,
int[] startGuardRange,
Map<DecodeHintType,?> hints)
Like
decodeRow(int, BitArray, Map), but
allows caller to inform method about where the UPC/EAN start pattern is
found. |
Result |
decodeRow(int rowNumber,
BitArray row,
Map<DecodeHintType,?> hints)
Attempts to decode a one-dimensional barcode format given a single row of
an image.
|
decode, decode, patternMatchVariance, recordPattern, recordPatternInReverse, resetpublic Result decodeRow(int rowNumber, BitArray row, Map<DecodeHintType,?> hints) throws NotFoundException, ChecksumException, FormatException
OneDReaderAttempts to decode a one-dimensional barcode format given a single row of an image.
decodeRow in class OneDReaderrowNumber - row number from top of the rowrow - the black/white pixel data of the rowhints - decode hintsResult containing encoded string and start/end of barcodeNotFoundException - if no potential barcode is foundChecksumException - if a potential barcode is found but does not pass its checksumFormatException - if a potential barcode is found but format is invalidpublic Result decodeRow(int rowNumber, BitArray row, int[] startGuardRange, Map<DecodeHintType,?> hints) throws NotFoundException, ChecksumException, FormatException
Like decodeRow(int, BitArray, Map), but
allows caller to inform method about where the UPC/EAN start pattern is
found. This allows this to be computed once and reused across many implementations.
rowNumber - row index into the imagerow - encoding of the row of the barcode imagestartGuardRange - start/end column where the opening start pattern was foundhints - optional hints that influence decodingResult encapsulating the result of decoding a barcode in the rowNotFoundException - if no potential barcode is foundChecksumException - if a potential barcode is found but does not pass its checksumFormatException - if a potential barcode is found but format is invalidprotected abstract int decodeMiddle(BitArray row, int[] startRange, StringBuilder resultString) throws NotFoundException
row - row of black/white values to searchstartRange - start/end offset of start guard patternresultString - StringBuilder to append decoded chars toNotFoundException - if decoding could not complete successfullyCopyright © 2007–2018. All rights reserved.