Package com.itextpdf.barcodes
Class BarcodeMSI
- java.lang.Object
-
- com.itextpdf.barcodes.Barcode1D
-
- com.itextpdf.barcodes.BarcodeMSI
-
public class BarcodeMSI extends Barcode1D
Implements the MSI Barcode. Thecodemay only contain numeric characters. ThegetChecksummethod returns the mod 10 checksum digit which is the most widely used for MSI barcodes.
-
-
Field Summary
Fields Modifier and Type Field Description private static byte[][]BARSThe bars to generate the code.private static byte[]BARS_ENDThe sequence appended to the end of all MSI Barcodes.private static intBARS_FOR_STARTThe number of individual bars either drawn or not drawn for the start character in the BarcodeMSI.private static intBARS_FOR_STOPThe number of individual bars either drawn or not drawn for the stop character in the BarcodeMSI.private static intBARS_PER_CHARACTERThe number of individual bars either drawn or not drawn per character of thecodeprivate static byte[]BARS_STARTThe sequence prepended to the start of all MSI Barcodes.private static java.lang.StringCHARSThe index chars toBARSrepresenting valid characters in thecode-
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 BarcodeMSI(PdfDocument document)Creates a new BarcodeMSI.BarcodeMSI(PdfDocument document, PdfFont font)Creates a new BarcodeMSI
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.awt.ImagecreateAwtImage(java.awt.Color foreground, java.awt.Color background)Creates ajava.awt.Image.RectanglegetBarcodeSize()Gets the maximum area that the barcode and the text, if any, will occupy.static byte[]getBarsMSI(java.lang.String text)Creates the bars.static intgetChecksum(java.lang.String text)Calculates the mod 10 checksum digit using the Luhn algorithm.RectangleplaceBarcode(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 toBARSrepresenting valid characters in thecode- See Also:
- Constant Field Values
-
BARS_START
private static final byte[] BARS_START
The sequence prepended to the start of all MSI Barcodes.
-
BARS_END
private static final byte[] BARS_END
The sequence appended to the end of all MSI Barcodes.
-
BARS
private static final byte[][] BARS
The bars to generate the code.
-
BARS_PER_CHARACTER
private static final int BARS_PER_CHARACTER
The number of individual bars either drawn or not drawn per character of thecode- See Also:
- Constant Field Values
-
BARS_FOR_START
private static final int BARS_FOR_START
The number of individual bars either drawn or not drawn for the start character in the BarcodeMSI.- See Also:
- Constant Field Values
-
BARS_FOR_STOP
private static final int BARS_FOR_STOP
The number of individual bars either drawn or not drawn for the stop character in the BarcodeMSI.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
BarcodeMSI
public BarcodeMSI(PdfDocument document)
Creates a new BarcodeMSI. To generate the font thePdfDocument.getDefaultFont()will be implicitly called. If you want to use this barcode in PDF/A documents, please consider usingBarcodeMSI(PdfDocument, PdfFont).- Parameters:
document- The document to which the barcode will be added
-
BarcodeMSI
public BarcodeMSI(PdfDocument document, PdfFont font)
Creates a new BarcodeMSI- Parameters:
document- The document to which the barcode will be addedfont- The font to use
-
-
Method Detail
-
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:
getBarcodeSizein 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:
barColortextColorResult nullnullbars and text painted with current fill color barColornullbars and text painted with barColornulltextColorbars painted with current color
text painted withtextColorbarColortextColorbars painted with barColor
text painted withtextColor- Specified by:
placeBarcodein classBarcode1D- Parameters:
canvas- thePdfCanvaswhere the barcode will be placedbarColor- the color of the bars. It can benulltextColor- 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:
createAwtImagein classBarcode1D- Parameters:
foreground- the color of the barsbackground- the color of the background- Returns:
- the image
-
getBarsMSI
public static byte[] getBarsMSI(java.lang.String text)
Creates the bars.- Parameters:
text- the text to create the bars.- Returns:
- the bars
-
getChecksum
public static int getChecksum(java.lang.String text)
Calculates the mod 10 checksum digit using the Luhn algorithm.- Parameters:
text- the barcode data- Returns:
- the checksum digit
-
-