Package com.lowagie.text.pdf
Class Barcode128
java.lang.Object
com.lowagie.text.pdf.Barcode
com.lowagie.text.pdf.Barcode128
Implements the code 128 and UCC/EAN-128. Other symbologies are allowed in raw mode.
The code types allowed
are:
- CODE128 - plain barcode 128.
- CODE128_UCC - support for UCC/EAN-128 with a full list of AI.
- CODE128_RAW - raw mode. The code attribute has the actual codes from 0 to 105 followed by '\uffff' and the human readable text.
x = 0.8f; font = BaseFont.createFont("Helvetica", "winansi", false); size = 8; baseline = size; barHeight = size * 3; textAlignment = Element.ALIGN_CENTER; codeType = CODE128;
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final IntHashtable
private static final byte[][]
The bars to generate the code.private static final byte[]
The stop bars.static final char
static final char
The charset code change.static final char
The charset code change.static final char
The charset code change.static final char
static final char
static final char
static final char
The code for UCC/EAN-128.static final char
static final char
static final char
static final char
static final char
The start code.static final char
The start code.static final char
The start code.static final char
static final char
static final char
Fields inherited from class com.lowagie.text.pdf.Barcode
altText, barHeight, baseline, checksumText, CODABAR, code, CODE128, CODE128_RAW, CODE128_UCC, codeType, EAN13, EAN8, extended, font, generateChecksum, guardBars, inkSpreading, n, PLANET, POSTNET, size, startStopText, SUPP2, SUPP5, textAlignment, UPCA, UPCE, x
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptioncreateAwtImage
(Color foreground, Color background) Creates ajava.awt.Image
.Gets the maximum area that the barcode and the text, if any, will occupy.static byte[]
getBarsCode128Raw
(String text) Generates the bars.static String
getHumanReadableUCCEAN
(String code) Gets the human readable text of a sequence of AI.(package private) static String
getPackedRawDigits
(String text, int textIndex, int numDigits) Packs the digits for charset C also considering FNC1.static String
getRawText
(String text, boolean ucc) Converts the human readable text to the characters needed to create a barcode.(package private) static boolean
isNextDigits
(String text, int textIndex, int numDigits) Returnstrue
if the nextnumDigits
starting from indextextIndex
are numeric skipping any FNC1.placeBarcode
(PdfContentByte cb, Color barColor, Color textColor) Places the barcode in aPdfContentByte
.static String
removeFNC1
(String code) Removes the FNC1 codes in the text.void
Sets the code to generate.Methods inherited from class com.lowagie.text.pdf.Barcode
createImageWithBarcode, createTemplateWithBarcode, getAltText, getBarHeight, getBaseline, getCode, getCodeType, getFont, getInkSpreading, getN, getSize, getTextAlignment, getX, isChecksumText, isExtended, isGenerateChecksum, isGuardBars, isStartStopText, setAltText, setBarHeight, setBaseline, setChecksumText, setCodeType, setExtended, setFont, setGenerateChecksum, setGuardBars, setInkSpreading, setN, setSize, setStartStopText, setTextAlignment, setX
-
Field Details
-
CODE_AB_TO_C
public static final char CODE_AB_TO_CThe charset code change.- See Also:
-
CODE_AC_TO_B
public static final char CODE_AC_TO_BThe charset code change.- See Also:
-
CODE_BC_TO_A
public static final char CODE_BC_TO_AThe charset code change.- See Also:
-
FNC1_INDEX
public static final char FNC1_INDEXThe code for UCC/EAN-128.- See Also:
-
START_A
public static final char START_AThe start code.- See Also:
-
START_B
public static final char START_BThe start code.- See Also:
-
START_C
public static final char START_CThe start code.- See Also:
-
FNC1
public static final char FNC1- See Also:
-
DEL
public static final char DEL- See Also:
-
FNC3
public static final char FNC3- See Also:
-
FNC2
public static final char FNC2- See Also:
-
SHIFT
public static final char SHIFT- See Also:
-
CODE_C
public static final char CODE_C- See Also:
-
CODE_A
public static final char CODE_A- See Also:
-
FNC4
public static final char FNC4- See Also:
-
STARTA
public static final char STARTA- See Also:
-
STARTB
public static final char STARTB- See Also:
-
STARTC
public static final char STARTC- See Also:
-
BARS
private static final byte[][] BARSThe bars to generate the code. -
BARS_STOP
private static final byte[] BARS_STOPThe stop bars. -
ais
-
-
Constructor Details
-
Barcode128
public Barcode128()Creates new Barcode128
-
-
Method Details
-
removeFNC1
Removes the FNC1 codes in the text.- Parameters:
code
- the text to clean- Returns:
- the cleaned text
-
getHumanReadableUCCEAN
Gets the human readable text of a sequence of AI.- Parameters:
code
- the text- Returns:
- the human readable text
-
isNextDigits
Returnstrue
if the nextnumDigits
starting from indextextIndex
are numeric skipping any FNC1.- Parameters:
text
- the text to checktextIndex
- where to check fromnumDigits
- the number of digits to check- Returns:
- the check result
-
getPackedRawDigits
Packs the digits for charset C also considering FNC1. It assumes that all the parameters are valid.- Parameters:
text
- the text to packtextIndex
- where to pack fromnumDigits
- the number of digits to pack. It is always an even number- Returns:
- the packed digits, two digits per character
-
getRawText
Converts the human readable text to the characters needed to create a barcode. Some optimization is done to get the shortest code.- Parameters:
text
- the text to convertucc
-true
if it is an UCC/EAN-128. In this case the character FNC1 is added- Returns:
- the code ready to be fed to getBarsCode128Raw()
-
getBarsCode128Raw
Generates the bars. The input has the actual barcodes, not the human readable text.- Parameters:
text
- the barcode- Returns:
- the bars
-
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 classBarcode
- Returns:
- the size the barcode occupies.
-
placeBarcode
Places the barcode in aPdfContentByte
. 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:
table of the colors of the bars and text 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 classBarcode
- Parameters:
cb
- thePdfContentByte
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
Creates ajava.awt.Image
. This image only contains the bars without any text.- Specified by:
createAwtImage
in classBarcode
- Parameters:
foreground
- the color of the barsbackground
- the color of the background- Returns:
- the image
-
setCode
Sets the code to generate. If it's an UCC code and starts with '(' it will be split by the AI. This code in UCC mode is valid:(01)00000090311314(10)ABC123(15)060916
-