com.google.zxing.multi
Class ByQuadrantReader

java.lang.Object
  extended by com.google.zxing.multi.ByQuadrantReader
All Implemented Interfaces:
Reader

public final class ByQuadrantReader
extends java.lang.Object
implements Reader

This class attempts to decode a barcode from an image, not by scanning the whole image, but by scanning subsets of the image. This is important when there may be multiple barcodes in an image, and detecting a barcode may find parts of multiple barcode and fail to decode (e.g. QR Codes). Instead this scans the four quadrants of the image -- and also the center 'quadrant' to cover the case where a barcode is found in the center.

See Also:
GenericMultipleBarcodeReader

Constructor Summary
ByQuadrantReader(Reader delegate)
           
 
Method Summary
 Result decode(BinaryBitmap image)
          Locates and decodes a barcode in some format within an image.
 Result decode(BinaryBitmap image, java.util.Map<DecodeHintType,?> hints)
          Locates and decodes a barcode in some format within an image.
 void reset()
          Resets any internal state the implementation has after a decode, to prepare it for reuse.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ByQuadrantReader

public ByQuadrantReader(Reader delegate)
Method Detail

decode

public Result decode(BinaryBitmap image)
              throws NotFoundException,
                     ChecksumException,
                     FormatException
Description copied from interface: Reader
Locates and decodes a barcode in some format within an image.

Specified by:
decode in interface Reader
Parameters:
image - image of barcode to decode
Returns:
String which the barcode encodes
Throws:
NotFoundException - if the barcode cannot be located or decoded for any reason
ChecksumException
FormatException

decode

public Result decode(BinaryBitmap image,
                     java.util.Map<DecodeHintType,?> hints)
              throws NotFoundException,
                     ChecksumException,
                     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
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 the barcode cannot be located or decoded for any reason
ChecksumException
FormatException

reset

public void reset()
Description copied from interface: Reader
Resets any internal state the implementation has after a decode, to prepare it for reuse.

Specified by:
reset in interface Reader