Package com.itextpdf.barcodes
Class BarcodeCodabar
- java.lang.Object
-
- com.itextpdf.barcodes.Barcode1D
-
- com.itextpdf.barcodes.BarcodeCodabar
-
public class BarcodeCodabar extends Barcode1D
Implementation of the Codabar barcode.Codabar was designed to be accurately read even when printed on dot-matrix printers for multi-part forms such as FedEx airbills and blood bank forms, where variants are still in use as of 2007. Although newer symbologies hold more information in a smaller space.
-
-
Field Summary
Fields Modifier and Type Field Description private static byte[][]
BARS
The bars to generate the code.private static java.lang.String
CHARS
The index chars toBARS
.private static int
START_STOP_IDX
-
Fields inherited from class com.itextpdf.barcodes.Barcode1D
ALIGN_CENTER, ALIGN_LEFT, ALIGN_RIGHT, altText, barHeight, baseline, checksumText, code, codeType, DEFAULT_BAR_BACKGROUND_COLOR, DEFAULT_BAR_FOREGROUND_COLOR, document, extended, font, generateChecksum, guardBars, inkSpreading, n, size, startStopText, textAlignment, x
-
-
Constructor Summary
Constructors Constructor Description BarcodeCodabar(PdfDocument document)
Creates a new BarcodeCodabar.BarcodeCodabar(PdfDocument document, PdfFont font)
Creates a new BarcodeCodabar.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static java.lang.String
calculateChecksum(java.lang.String code)
Calculates the checksum.java.awt.Image
createAwtImage(java.awt.Color foreground, java.awt.Color background)
Creates ajava.awt.Image
.Rectangle
getBarcodeSize()
Gets the maximum area that the barcode and the text, if any, will occupy.static byte[]
getBarsCodabar(java.lang.String text)
Creates the bars.Rectangle
placeBarcode(PdfCanvas canvas, Color barColor, Color textColor)
Places the barcode in aPdfCanvas
.-
Methods inherited from class com.itextpdf.barcodes.Barcode1D
createFormXObject, createFormXObject, fitWidth, getAltText, getBarHeight, getBaseline, getCode, getCodeType, getDescender, getFont, getInkSpreading, getN, getSize, getTextAlignment, getX, isChecksumText, isExtended, isGenerateChecksum, isGuardBars, isStartStopText, setAltText, setBarHeight, setBaseline, setChecksumText, setCode, setCodeType, setExtended, setFont, setGenerateChecksum, setGuardBars, setInkSpreading, setN, setSize, setStartStopText, setTextAlignment, setX
-
-
-
-
Field Detail
-
CHARS
private static final java.lang.String CHARS
The index chars toBARS
.- See Also:
- Constant Field Values
-
START_STOP_IDX
private static final int START_STOP_IDX
- See Also:
- Constant Field Values
-
BARS
private static final byte[][] BARS
The bars to generate the code.
-
-
Constructor Detail
-
BarcodeCodabar
public BarcodeCodabar(PdfDocument document)
Creates a new BarcodeCodabar. To generate the font thePdfDocument.getDefaultFont()
will be implicitly called. If you want to use this barcode in PDF/A documents, please consider usingBarcodeCodabar(PdfDocument, PdfFont)
.- Parameters:
document
- The document to which the barcode will be added
-
BarcodeCodabar
public BarcodeCodabar(PdfDocument document, PdfFont font)
Creates a new BarcodeCodabar.- Parameters:
document
- The document to which the barcode will be addedfont
- The font to use
-
-
Method Detail
-
getBarsCodabar
public static byte[] getBarsCodabar(java.lang.String text)
Creates the bars.- Parameters:
text
- the text to create the bars- Returns:
- the bars
-
calculateChecksum
public static java.lang.String calculateChecksum(java.lang.String code)
Calculates the checksum.- Parameters:
code
- the value to calculate the checksum for- Returns:
- the checksum for the given value
-
getBarcodeSize
public Rectangle getBarcodeSize()
Gets the maximum area that the barcode and the text, if any, will occupy. The lower left corner is always (0, 0).- Specified by:
getBarcodeSize
in classBarcode1D
- Returns:
- the size the barcode occupies.
-
placeBarcode
public Rectangle placeBarcode(PdfCanvas canvas, Color barColor, Color textColor)
Places the barcode in aPdfCanvas
. The barcode is always placed at coordinates (0, 0). Use the translation matrix to move it elsewhere.The bars and text are written in the following colors:
barColor
textColor
Result null
null
bars and text painted with current fill color barColor
null
bars and text painted with barColor
null
textColor
bars painted with current color
text painted withtextColor
barColor
textColor
bars painted with barColor
text painted withtextColor
- Specified by:
placeBarcode
in classBarcode1D
- Parameters:
canvas
- thePdfCanvas
where the barcode will be placedbarColor
- the color of the bars. It can benull
textColor
- the color of the text. It can benull
- Returns:
- the dimensions the barcode occupies
-
createAwtImage
public java.awt.Image createAwtImage(java.awt.Color foreground, java.awt.Color background)
Creates ajava.awt.Image
. This image only contains the bars without any text.- Specified by:
createAwtImage
in classBarcode1D
- Parameters:
foreground
- the color of the barsbackground
- the color of the background- Returns:
- the image
-
-