Class Barcode39


  • public class Barcode39
    extends Barcode
    Implements the code 39 and code 39 extended. The default parameters are:
    x = 0.8f;
    n = 2;
    font = BaseFont.createFont("Helvetica", "winansi", false);
    size = 8;
    baseline = size;
    barHeight = size * 3;
    textAlignment = Element.ALIGN_CENTER;
    generateChecksum = false;
    checksumText = false;
    startStopText = true;
    extended = false;
     
    • Field Detail

      • BARS

        private static final byte[][] BARS
        The bars to generate the code.
      • CHARS

        private static final java.lang.String CHARS
        The index chars to BARS.
        See Also:
        Constant Field Values
      • EXTENDED

        private static final java.lang.String EXTENDED
        The character combinations to make the code 39 extended.
        See Also:
        Constant Field Values
    • Constructor Detail

      • Barcode39

        public Barcode39()
        Creates a new Barcode39.
    • Method Detail

      • getBarsCode39

        public static byte[] getBarsCode39​(java.lang.String text)
        Creates the bars.
        Parameters:
        text - the text to create the bars. This text does not include the start and stop characters
        Returns:
        the bars
      • getCode39Ex

        public static java.lang.String getCode39Ex​(java.lang.String text)
        Converts the extended text into a normal, escaped text, ready to generate bars.
        Parameters:
        text - the extended text
        Returns:
        the escaped text
      • getChecksum

        static char getChecksum​(java.lang.String text)
        Calculates the checksum.
        Parameters:
        text - the text
        Returns:
        the checksum
      • 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 class Barcode
        Returns:
        the size the barcode occupies.
      • placeBarcode

        public Rectangle placeBarcode​(PdfContentByte cb,
                                      BaseColor barColor,
                                      BaseColor textColor)
        Places the barcode in a PdfContentByte. 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 with textColor

        barColor

        textColor

        bars painted with barColor
        text painted with textColor

        Specified by:
        placeBarcode in class Barcode
        Parameters:
        cb - the PdfContentByte where the barcode will be placed
        barColor - the color of the bars. It can be null
        textColor - the color of the text. It can be null
        Returns:
        the dimensions the barcode occupies
      • createAwtImage

        public java.awt.Image createAwtImage​(java.awt.Color foreground,
                                             java.awt.Color background)
        Creates a java.awt.Image. This image only contains the bars without any text.
        Specified by:
        createAwtImage in class Barcode
        Parameters:
        foreground - the color of the bars
        background - the color of the background
        Returns:
        the image