Class UPCAReader
java.lang.Object
com.google.zxing.oned.OneDReader
com.google.zxing.oned.UPCEANReader
com.google.zxing.oned.UPCAReader
- All Implemented Interfaces:
Reader
Implements decoding of the UPC-A format.
-
Field Summary
FieldsFields inherited from class UPCEANReader
END_PATTERN, L_AND_G_PATTERNS, L_PATTERNS, MIDDLE_PATTERN, START_END_PATTERN -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondecode(BinaryBitmap image) Locates and decodes a barcode in some format within an image.decode(BinaryBitmap image, Map<DecodeHintType, ?> hints) Locates and decodes a barcode in some format within an image.protected intdecodeMiddle(BitArray row, int[] startRange, StringBuilder resultString) Subclasses override this to decode the portion of a barcode between the start and end guard patterns.decodeRow(int rowNumber, BitArray row, int[] startGuardRange, Map<DecodeHintType, ?> hints) LikeUPCEANReader.decodeRow(int, BitArray, Map), but allows caller to inform method about where the UPC/EAN start pattern is found.decodeRow(int rowNumber, BitArray row, Map<DecodeHintType, ?> hints) Attempts to decode a one-dimensional barcode format given a single row of an image.(package private) BarcodeFormatGet the format of this decoder.private static ResultmaybeReturnResult(Result result) Methods inherited from class UPCEANReader
checkChecksum, checkStandardUPCEANChecksum, decodeDigit, decodeEnd, findGuardPattern, findStartGuardPattern, getStandardUPCEANChecksumMethods inherited from class OneDReader
patternMatchVariance, recordPattern, recordPatternInReverse, reset
-
Field Details
-
ean13Reader
-
-
Constructor Details
-
UPCAReader
public UPCAReader()
-
-
Method Details
-
decodeRow
public Result decodeRow(int rowNumber, BitArray row, int[] startGuardRange, Map<DecodeHintType, ?> hints) throws NotFoundException, FormatException, ChecksumException Description copied from class:UPCEANReaderLike
UPCEANReader.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.- Overrides:
decodeRowin classUPCEANReader- Parameters:
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 decoding- Returns:
Resultencapsulating the result of decoding a barcode in the row- Throws:
NotFoundException- if no potential barcode is foundFormatException- if a potential barcode is found but format is invalidChecksumException- if a potential barcode is found but does not pass its checksum
-
decodeRow
public Result decodeRow(int rowNumber, BitArray row, Map<DecodeHintType, ?> hints) throws NotFoundException, FormatException, ChecksumException Description copied from class:OneDReaderAttempts to decode a one-dimensional barcode format given a single row of an image.
- Overrides:
decodeRowin classUPCEANReader- Parameters:
rowNumber- row number from top of the rowrow- the black/white pixel data of the rowhints- decode hints- Returns:
Resultcontaining encoded string and start/end of barcode- Throws:
NotFoundException- if no potential barcode is foundFormatException- if a potential barcode is found but format is invalidChecksumException- if a potential barcode is found but does not pass its checksum
-
decode
Description copied from interface:ReaderLocates and decodes a barcode in some format within an image.- Specified by:
decodein interfaceReader- Overrides:
decodein classOneDReader- Parameters:
image- image of barcode to decode- Returns:
- String which the barcode encodes
- Throws:
NotFoundException- if no potential barcode is foundFormatException- if a potential barcode is found but format is invalid
-
decode
public Result decode(BinaryBitmap image, Map<DecodeHintType, ?> hints) throws NotFoundException, FormatException Description copied from interface:ReaderLocates and decodes a barcode in some format within an image. This method also accepts hints, each possibly associated to some data, which may help the implementation decode.- Specified by:
decodein interfaceReader- Overrides:
decodein classOneDReader- Parameters:
image- image of barcode to decodehints- passed as aMapfromDecodeHintTypeto arbitrary data. The meaning of the data depends upon the hint type. The implementation may or may not do anything with these hints.- Returns:
- String which the barcode encodes
- Throws:
NotFoundException- if no potential barcode is foundFormatException- if a potential barcode is found but format is invalid
-
getBarcodeFormat
BarcodeFormat getBarcodeFormat()Description copied from class:UPCEANReaderGet the format of this decoder.- Specified by:
getBarcodeFormatin classUPCEANReader- Returns:
- The 1D format.
-
decodeMiddle
protected int decodeMiddle(BitArray row, int[] startRange, StringBuilder resultString) throws NotFoundException Description copied from class:UPCEANReaderSubclasses override this to decode the portion of a barcode between the start and end guard patterns.- Specified by:
decodeMiddlein classUPCEANReader- Parameters:
row- row of black/white values to searchstartRange- start/end offset of start guard patternresultString-StringBuilderto append decoded chars to- Returns:
- horizontal offset of first pixel after the "middle" that was decoded
- Throws:
NotFoundException- if decoding could not complete successfully
-
maybeReturnResult
- Throws:
FormatException
-