Class Barcode39

java.lang.Object
com.itextpdf.barcodes.Barcode1D
com.itextpdf.barcodes.Barcode39

public class Barcode39 extends Barcode1D
This class represents the barcode Code 39.

Code 39 is a variable length, discrete barcode symbology defined in ISO/IEC 16388:2007.

The Code 39 specification defines 43 characters, consisting of uppercase letters (A through Z), numeric digits (0 through 9) and a number of special characters (-, ., $, /, +, %, and space). An additional character (denoted '*') is used for both start and stop delimiters. Each character is composed of nine elements: five bars and four spaces.

  • Constructor Details

    • Barcode39

      public Barcode39 (PdfDocument document)
      Creates a new Barcode39. To generate the font the PdfDocument.getDefaultFont() will be implicitly called. If you want to use this barcode in PDF/A documents, please consider using Barcode39(PdfDocument, PdfFont).
      Parameters:
      document - The document to which the barcode will be added
    • Barcode39

      public Barcode39 (PdfDocument document, PdfFont font)
      Creates a new Barcode39.
      Parameters:
      document - The document to which the barcode will be added
      font - The font to use
  • Method Details

    • getBarsCode39

      public static byte[] getBarsCode39 (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 String getCode39Ex (String text)
      Converts the extended text into a normal, escaped text, ready to generate bars.
      Parameters:
      text - the extended text
      Returns:
      the escaped text
    • 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 Barcode1D
      Returns:
      the size the barcode occupies.
    • placeBarcode

      public Rectangle placeBarcode (PdfCanvas canvas, Color barColor, Color textColor)
      Places the barcode in a PdfCanvas. 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 Barcode1D
      Parameters:
      canvas - the PdfCanvas 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 Image createAwtImage (Color foreground, Color background)
      Creates a java.awt.Image. This image only contains the bars without any text.
      Specified by:
      createAwtImage in class Barcode1D
      Parameters:
      foreground - the color of the bars
      background - the color of the background
      Returns:
      the image