Class UPCAReader

  • All Implemented Interfaces:
    Reader

    public final class UPCAReader
    extends UPCEANReader

    Implements decoding of the UPC-A format.

    • Constructor Detail

      • UPCAReader

        public UPCAReader()
    • Method Detail

      • decode

        public Result decode​(BinaryBitmap image,
                             java.util.Map<DecodeHintType,​?> hints)
                      throws NotFoundException,
                             FormatException
        Description copied from interface: Reader
        Locates 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:
        decode in interface Reader
        Overrides:
        decode in class OneDReader
        Parameters:
        image - image of barcode to decode
        hints - passed as a Map from DecodeHintType to 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 found
        FormatException - if a potential barcode is found but format is invalid
      • decodeMiddle

        protected int decodeMiddle​(BitArray row,
                                   int[] startRange,
                                   java.lang.StringBuilder resultString)
                            throws NotFoundException
        Description copied from class: UPCEANReader
        Subclasses override this to decode the portion of a barcode between the start and end guard patterns.
        Specified by:
        decodeMiddle in class UPCEANReader
        Parameters:
        row - row of black/white values to search
        startRange - start/end offset of start guard pattern
        resultString - StringBuilder to append decoded chars to
        Returns:
        horizontal offset of first pixel after the "middle" that was decoded
        Throws:
        NotFoundException - if decoding could not complete successfully