com.google.zxing.oned
Class OneDimensionalCodeWriter

java.lang.Object
  extended by com.google.zxing.oned.OneDimensionalCodeWriter
All Implemented Interfaces:
Writer
Direct Known Subclasses:
CodaBarWriter, UPCEANWriter

public abstract class OneDimensionalCodeWriter
extends java.lang.Object
implements Writer

Encapsulates functionality and implementation that is common to one-dimensional barcodes.

Author:
dsbnatut@gmail.com (Kazuki Nishiura)

Constructor Summary
protected OneDimensionalCodeWriter(int sidesMargin)
           
 
Method Summary
protected static int appendPattern(byte[] target, int pos, int[] pattern, int startColor)
          Appends the given pattern to the target array starting at pos.
abstract  byte[] encode(java.lang.String contents)
          Encode the contents to byte array expression of one-dimensional barcode.
 BitMatrix encode(java.lang.String contents, BarcodeFormat format, int width, int height)
          Encode a barcode using the default settings.
 BitMatrix encode(java.lang.String contents, BarcodeFormat format, int width, int height, java.util.Map<EncodeHintType,?> hints)
          Encode the contents following specified format.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

OneDimensionalCodeWriter

protected OneDimensionalCodeWriter(int sidesMargin)
Method Detail

encode

public BitMatrix encode(java.lang.String contents,
                        BarcodeFormat format,
                        int width,
                        int height)
                 throws WriterException
Description copied from interface: Writer
Encode a barcode using the default settings.

Specified by:
encode in interface Writer
Parameters:
contents - The contents to encode in the barcode
format - The barcode format to generate
width - The preferred width in pixels
height - The preferred height in pixels
Throws:
WriterException

encode

public BitMatrix encode(java.lang.String contents,
                        BarcodeFormat format,
                        int width,
                        int height,
                        java.util.Map<EncodeHintType,?> hints)
                 throws WriterException
Encode the contents following specified format. width and height are required size. This method may return bigger size BitMatrix when specified size is too small. The user can set both width and height to zero to get minimum size barcode. If negative value is set to width or height, IllegalArgumentException is thrown.

Specified by:
encode in interface Writer
Parameters:
contents - The contents to encode in the barcode
format - The barcode format to generate
width - The preferred width in pixels
height - The preferred height in pixels
hints - Additional parameters to supply to the encoder
Throws:
WriterException

appendPattern

protected static int appendPattern(byte[] target,
                                   int pos,
                                   int[] pattern,
                                   int startColor)
Appends the given pattern to the target array starting at pos.

Parameters:
startColor - starting color - 0 for white, 1 for black
Returns:
the number of elements added to target.

encode

public abstract byte[] encode(java.lang.String contents)
Encode the contents to byte array expression of one-dimensional barcode. Start code and end code should be included in result, and side margins should not be included.

Returns:
a byte array of horizontal pixels (0 = white, 1 = black)