mirror of
https://github.com/zxing/zxing.git
synced 2025-03-05 20:48:51 -08:00
Cleaned up some code to fit in 100 columns.
git-svn-id: https://zxing.googlecode.com/svn/trunk@942 59b500cc-1b3d-0410-9834-0bbf25fbcc57
This commit is contained in:
parent
1c243335a6
commit
c9d3eae171
|
@ -90,25 +90,25 @@ public final class MultiFormatReader implements Reader {
|
|||
this.hints = hints;
|
||||
|
||||
boolean tryHarder = hints != null && hints.containsKey(DecodeHintType.TRY_HARDER);
|
||||
Vector possibleFormats = hints == null ? null : (Vector) hints.get(DecodeHintType.POSSIBLE_FORMATS);
|
||||
Vector formats = hints == null ? null : (Vector) hints.get(DecodeHintType.POSSIBLE_FORMATS);
|
||||
readers = new Vector();
|
||||
if (possibleFormats != null) {
|
||||
if (formats != null) {
|
||||
boolean addOneDReader =
|
||||
possibleFormats.contains(BarcodeFormat.UPC_A) ||
|
||||
possibleFormats.contains(BarcodeFormat.UPC_E) ||
|
||||
possibleFormats.contains(BarcodeFormat.EAN_13) ||
|
||||
possibleFormats.contains(BarcodeFormat.EAN_8) ||
|
||||
possibleFormats.contains(BarcodeFormat.CODE_39) ||
|
||||
possibleFormats.contains(BarcodeFormat.CODE_128) ||
|
||||
possibleFormats.contains(BarcodeFormat.ITF);
|
||||
formats.contains(BarcodeFormat.UPC_A) ||
|
||||
formats.contains(BarcodeFormat.UPC_E) ||
|
||||
formats.contains(BarcodeFormat.EAN_13) ||
|
||||
formats.contains(BarcodeFormat.EAN_8) ||
|
||||
formats.contains(BarcodeFormat.CODE_39) ||
|
||||
formats.contains(BarcodeFormat.CODE_128) ||
|
||||
formats.contains(BarcodeFormat.ITF);
|
||||
// Put 1D readers upfront in "normal" mode
|
||||
if (addOneDReader && !tryHarder) {
|
||||
readers.addElement(new MultiFormatOneDReader(hints));
|
||||
}
|
||||
if (possibleFormats.contains(BarcodeFormat.QR_CODE)) {
|
||||
if (formats.contains(BarcodeFormat.QR_CODE)) {
|
||||
readers.addElement(new QRCodeReader());
|
||||
}
|
||||
if (possibleFormats.contains(BarcodeFormat.DATAMATRIX)) {
|
||||
if (formats.contains(BarcodeFormat.DATAMATRIX)) {
|
||||
readers.addElement(new DataMatrixReader());
|
||||
}
|
||||
// At end in "try harder" mode
|
||||
|
|
|
@ -69,15 +69,16 @@ public final class Result {
|
|||
}
|
||||
|
||||
/**
|
||||
* @return {@link BarcodeFormat} representing the format of the barcode that was recognized and decoded
|
||||
* @return {@link BarcodeFormat} representing the format of the barcode that was decoded
|
||||
*/
|
||||
public BarcodeFormat getBarcodeFormat() {
|
||||
return format;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return {@link Hashtable} mapping {@link ResultMetadataType} keys to values. May be <code>null</code>.
|
||||
* This contains optional metadata about what was detected about the barcode, like orientation.
|
||||
* @return {@link Hashtable} mapping {@link ResultMetadataType} keys to values. May be
|
||||
* <code>null</code>. This contains optional metadata about what was detected about the barcode,
|
||||
* like orientation.
|
||||
*/
|
||||
public Hashtable getResultMetadata() {
|
||||
return resultMetadata;
|
||||
|
|
|
@ -110,7 +110,8 @@ public abstract class BaseMonochromeBitmapSource implements MonochromeBitmapSour
|
|||
return column;
|
||||
}
|
||||
|
||||
public void estimateBlackPoint(BlackPointEstimationMethod method, int argument) throws ReaderException {
|
||||
public void estimateBlackPoint(BlackPointEstimationMethod method, int argument)
|
||||
throws ReaderException {
|
||||
if (!method.equals(lastMethod) || argument != lastArgument) {
|
||||
int width = getWidth();
|
||||
int height = getHeight();
|
||||
|
|
|
@ -42,10 +42,9 @@ public final class BlackPointEstimator {
|
|||
* @param histogram an array of <em>counts</em> of luminance values
|
||||
* @return index within argument of bucket corresponding to brightest values which should be
|
||||
* considered "black"
|
||||
* @throws ReaderException if "black" and "white" appear to be very close in luminance in the image
|
||||
* @throws ReaderException if "black" and "white" appear to be very close in luminance
|
||||
*/
|
||||
public static int estimate(int[] histogram) throws ReaderException{
|
||||
|
||||
int numBuckets = histogram.length;
|
||||
int maxBucketCount = 0;
|
||||
// Find tallest peak in histogram
|
||||
|
|
|
@ -81,7 +81,8 @@ public final class CharacterSetECI extends ECI {
|
|||
|
||||
/**
|
||||
* @param value character set ECI value
|
||||
* @return {@link CharacterSetECI} representing ECI of given value, or null if it is legal but unsupported
|
||||
* @return {@link CharacterSetECI} representing ECI of given value, or null if it is legal but
|
||||
* unsupported
|
||||
* @throws IllegalArgumentException if ECI value is invalid
|
||||
*/
|
||||
public static CharacterSetECI getCharacterSetECIByValue(int value) {
|
||||
|
@ -96,7 +97,8 @@ public final class CharacterSetECI extends ECI {
|
|||
|
||||
/**
|
||||
* @param name character set ECI encoding name
|
||||
* @return {@link CharacterSetECI} representing ECI for character encoding, or null if it is legal but unsupported
|
||||
* @return {@link CharacterSetECI} representing ECI for character encoding, or null if it is legal
|
||||
* but unsupported
|
||||
*/
|
||||
public static CharacterSetECI getCharacterSetECIByName(String name) {
|
||||
if (NAME_TO_ECI == null) {
|
||||
|
|
|
@ -64,8 +64,8 @@ public final class DefaultGridSampler extends GridSampler {
|
|||
// transform gets "twisted" such that it maps a straight line of points to a set of points
|
||||
// whose endpoints are in bounds, but others are not. There is probably some mathematical
|
||||
// way to detect this about the transformation that I don't know yet.
|
||||
// This results in an ugly runtime exception despite our clever checks above -- can't have that.
|
||||
// We could check each point's coordinates but that feels duplicative. We settle for
|
||||
// This results in an ugly runtime exception despite our clever checks above -- can't have
|
||||
// that. We could check each point's coordinates but that feels duplicative. We settle for
|
||||
// catching and wrapping ArrayIndexOutOfBoundsException.
|
||||
throw ReaderException.getInstance();
|
||||
}
|
||||
|
|
|
@ -17,8 +17,8 @@
|
|||
package com.google.zxing.common;
|
||||
|
||||
/**
|
||||
* Superclass of classes encapsulating types ECIs, according to "Extended Channel Interpretations" 5.3
|
||||
* of ISO 18004.
|
||||
* Superclass of classes encapsulating types ECIs, according to "Extended Channel Interpretations"
|
||||
* 5.3 of ISO 18004.
|
||||
*
|
||||
* @author Sean Owen
|
||||
*/
|
||||
|
|
|
@ -65,27 +65,27 @@ public abstract class GridSampler {
|
|||
}
|
||||
|
||||
/**
|
||||
* <p>Samples an image for a square matrix of bits of the given dimension. This is used to extract the
|
||||
* black/white modules of a 2D barcode like a QR Code found in an image. Because this barcode may be
|
||||
* rotated or perspective-distorted, the caller supplies four points in the source image that define
|
||||
* known points in the barcode, so that the image may be sampled appropriately.</p>
|
||||
* <p>Samples an image for a square matrix of bits of the given dimension. This is used to extract
|
||||
* the black/white modules of a 2D barcode like a QR Code found in an image. Because this barcode
|
||||
* may be rotated or perspective-distorted, the caller supplies four points in the source image
|
||||
* that define known points in the barcode, so that the image may be sampled appropriately.</p>
|
||||
*
|
||||
* <p>The last eight "from" parameters are four X/Y coordinate pairs of locations of points in
|
||||
* the image that define some significant points in the image to be sample. For example,
|
||||
* these may be the location of finder pattern in a QR Code.</p>
|
||||
*
|
||||
* <p>The first eight "to" parameters are four X/Y coordinate pairs measured in the destination
|
||||
* {@link BitMatrix}, from the top left, where the known points in the image given by the "from" parameters
|
||||
* map to.</p>
|
||||
* {@link BitMatrix}, from the top left, where the known points in the image given by the "from"
|
||||
* parameters map to.</p>
|
||||
*
|
||||
* <p>These 16 parameters define the transformation needed to sample the image.</p>
|
||||
*
|
||||
* @param image image to sample
|
||||
* @param dimension width/height of {@link BitMatrix} to sample from iamge
|
||||
* @return {@link BitMatrix} representing a grid of points sampled from the image within a region
|
||||
* defined by the "from" parameters
|
||||
* @throws ReaderException if image can't be sampled, for example, if the transformation defined by
|
||||
* the given points is invalid or results in sampling outside the image boundaries
|
||||
* defined by the "from" parameters
|
||||
* @throws ReaderException if image can't be sampled, for example, if the transformation defined
|
||||
* by the given points is invalid or results in sampling outside the image boundaries
|
||||
*/
|
||||
public abstract BitMatrix sampleGrid(MonochromeBitmapSource image,
|
||||
int dimension,
|
||||
|
@ -102,9 +102,9 @@ public abstract class GridSampler {
|
|||
* <p>Checks a set of points that have been transformed to sample points on an image against
|
||||
* the image's dimensions to see if the point are even within the image.</p>
|
||||
*
|
||||
* <p>This method will actually "nudge" the endpoints back onto the image if they are found to be barely
|
||||
* (less than 1 pixel) off the image. This accounts for imperfect detection of finder patterns in an image
|
||||
* where the QR Code runs all the way to the image border.</p>
|
||||
* <p>This method will actually "nudge" the endpoints back onto the image if they are found to be
|
||||
* barely (less than 1 pixel) off the image. This accounts for imperfect detection of finder
|
||||
* patterns in an image where the QR Code runs all the way to the image border.</p>
|
||||
*
|
||||
* <p>For efficiency, the method will check points from either end of the line until one is found
|
||||
* to be within the image. Because the set of points are assumed to be linear, this is valid.</p>
|
||||
|
@ -113,7 +113,8 @@ public abstract class GridSampler {
|
|||
* @param points actual points in x1,y1,...,xn,yn form
|
||||
* @throws ReaderException if an endpoint is lies outside the image boundaries
|
||||
*/
|
||||
protected static void checkAndNudgePoints(MonochromeBitmapSource image, float[] points) throws ReaderException {
|
||||
protected static void checkAndNudgePoints(MonochromeBitmapSource image, float[] points)
|
||||
throws ReaderException {
|
||||
int width = image.getWidth();
|
||||
int height = image.getHeight();
|
||||
// Check and nudge points from start until we see some that are OK:
|
||||
|
|
|
@ -17,9 +17,9 @@
|
|||
package com.google.zxing.common;
|
||||
|
||||
/**
|
||||
* <p>This class implements a perspective transform in two dimensions. Given four source and four destination
|
||||
* points, it will compute the transformation implied between them. The code is based directly upon section
|
||||
* 3.4.2 of George Wolberg's "Digital Image Warping"; see pages 54-56.</p>
|
||||
* <p>This class implements a perspective transform in two dimensions. Given four source and four
|
||||
* destination points, it will compute the transformation implied between them. The code is based
|
||||
* directly upon section 3.4.2 of George Wolberg's "Digital Image Warping"; see pages 54-56.</p>
|
||||
*
|
||||
* @author Sean Owen
|
||||
*/
|
||||
|
|
Loading…
Reference in a new issue