Package com.google.zxing.oned
Class OneDimensionalCodeWriter
- java.lang.Object
-
- com.google.zxing.oned.OneDimensionalCodeWriter
-
- All Implemented Interfaces:
Writer
- Direct Known Subclasses:
CodaBarWriter,Code128Writer,Code39Writer,Code93Writer,ITFWriter,UPCEANWriter
public abstract class OneDimensionalCodeWriter extends java.lang.Object implements Writer
Encapsulates functionality and implementation that is common to one-dimensional barcodes.
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.regex.PatternNUMERIC
-
Constructor Summary
Constructors Constructor Description OneDimensionalCodeWriter()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected static intappendPattern(boolean[] target, int pos, int[] pattern, boolean startColor)protected static voidcheckNumeric(java.lang.String contents)abstract boolean[]encode(java.lang.String contents)Encode the contents to boolean array expression of one-dimensional barcode.BitMatrixencode(java.lang.String contents, BarcodeFormat format, int width, int height)Encode a barcode using the default settings.BitMatrixencode(java.lang.String contents, BarcodeFormat format, int width, int height, java.util.Map<EncodeHintType,?> hints)Encode the contents following specified format.boolean[]encode(java.lang.String contents, java.util.Map<EncodeHintType,?> hints)Can be overwritten if the encode requires to read the hints map.intgetDefaultMargin()protected java.util.Collection<BarcodeFormat>getSupportedWriteFormats()private static BitMatrixrenderResult(boolean[] code, int width, int height, int sidesMargin)
-
-
-
Method Detail
-
encode
public abstract boolean[] encode(java.lang.String contents)
Encode the contents to boolean array expression of one-dimensional barcode. Start code and end code should be included in result, and side margins should not be included.- Parameters:
contents- barcode contents to encode- Returns:
- a
boolean[]of horizontal pixels (false = white, true = black)
-
encode
public boolean[] encode(java.lang.String contents, java.util.Map<EncodeHintType,?> hints)Can be overwritten if the encode requires to read the hints map. Otherwise it defaults toencode.- Parameters:
contents- barcode contents to encodehints- encoding hints- Returns:
- a
boolean[]of horizontal pixels (false = white, true = black)
-
encode
public final BitMatrix encode(java.lang.String contents, BarcodeFormat format, int width, int height)
Description copied from interface:WriterEncode a barcode using the default settings.
-
encode
public BitMatrix encode(java.lang.String contents, BarcodeFormat format, int width, int height, java.util.Map<EncodeHintType,?> hints)
Encode the contents following specified format.widthandheightare required size. This method may return bigger sizeBitMatrixwhen specified size is too small. The user can set bothwidthandheightto zero to get minimum size barcode. If negative value is set towidthorheight,IllegalArgumentExceptionis thrown.- Specified by:
encodein interfaceWriter- Parameters:
contents- The contents to encode in the barcodeformat- The barcode format to generatewidth- The preferred width in pixelsheight- The preferred height in pixelshints- Additional parameters to supply to the encoder- Returns:
BitMatrixrepresenting encoded barcode image
-
getSupportedWriteFormats
protected java.util.Collection<BarcodeFormat> getSupportedWriteFormats()
-
renderResult
private static BitMatrix renderResult(boolean[] code, int width, int height, int sidesMargin)
- Returns:
- a byte array of horizontal pixels (0 = white, 1 = black)
-
checkNumeric
protected static void checkNumeric(java.lang.String contents)
- Parameters:
contents- string to check for numeric characters- Throws:
java.lang.IllegalArgumentException- if input contains characters other than digits 0-9.
-
appendPattern
protected static int appendPattern(boolean[] target, int pos, int[] pattern, boolean startColor)- Parameters:
target- encode black/white pattern into this arraypos- position to start encoding at intargetpattern- lengths of black/white runs to encodestartColor- starting color - false for white, true for black- Returns:
- the number of elements added to target.
-
getDefaultMargin
public int getDefaultMargin()
-
-