Barcode Types (Fonts) and Patterns

The barcode type and options for including both text, document parameters, and delimiters for parameters are defined on the Barcode object in the BarcodeType enumeration and Pattern parameter.

Barcode Types (Fonts)

Use this enumeration to identify the type of barcode font to generate. This field allows one of four font options for the barcode as enumerated options on the request. The available font options include: Code39, Code128, Inter25, 2D (PDF417), and QR Barcode. Submitting this field allows you to specify the desired barcode font. Generally speaking, code 39 is very commonly used and suggested if using the tagline element to author a barcode while code 128 is visually more dense than code 39.

Note: When using base content, only Code 39 (barcode39) barcodes are supported with transaction barcodes. Customizations to the document can be made to support other barcode types for transaction barcodes, with the exception of QR Barcodes.
The following industry-standard barcode types are supported:
  • Code 128 (barcode128) - Code 128 is used for alphanumeric or numeric-only barcodes and uses all 128 ASCII characters; can be generated with a dynamic, static, or embedded PDF REQ document.
  • Code 39 (barcode39) - Also referred to as 3 of 9 or 3.9. Code 39 uses 43 characters including uppercase letters (A through Z), numeric digits (0 through 9) and a number of special characters (-, ., $, /, +, %, and space); can be generated with a dynamic, static, or embedded PDF REQ document.
    • Code 39 Extended - Code 39 Extended is an extended version of Code 39 that supports the ASCII character set. So with Code 39 Extended you can also code the 26 lower letters (a-z) and the special characters you have on your keyboard.
      Note: Currently, only Code 39 Extended is compatible with the RTF document format.
  • Inter25 (barcodeInter25) - Also referred to as 2 of 5; can be generated with a dynamic, static, or embedded PDF REQ document.
    Note: BarcodeInter25 requires the barcode to contain an even number of characters and static text characters; a 0 (zero) will be added to the beginning if an odd number of characters is provided. Note also that a barcodeInter25 only supports the use of numeric characters (i.e. "digits"). The use of non-numeric characters will result in an exception.
  • 2D Symbolism (barcode2D) - This option produces a barcode based on the PDF 417 definition; can be generated with a dynamic, static, or embedded PDF REQ document.
    Note: Any pattern text passed using barcode2d does not appear as text on the resulting documents; however, pattern text is present when scanning the barcode.
  • QR Barcode - This option produces a two-dimensional matrix barcode and can be generated with a dynamic, static, or embedded PDF REQ document.
    Note: The QR barcode is .5 x .5 inches in size when generated on documents and depending on the barcode alignment, the central scanning point is equidistant from the surrounding document margins regardless of the barcode size. Any pattern text passed using barcodeQR does not appear as text on the resulting documents; however, pattern text is present when scanning the barcode.
Important: Note the following:
  • Code 128, Code 39, Inter25, 2D (417), and QR Barcodes can be generated on regular PDF or Tagged PDF documents.
  • In order to pass the accessibility checker, additional development is required to fully implement TaggedPDF with barcode functionality. This work will be completed in a future release.

Barcode Components (Patterns)

The mechanism to apply specific values to a barcode on a per-document-request basis is to include a Pattern parameter on Barcode object in the request. This allows a barcode to be constructed with one or more optional components;
  • %page% - individual page number of the document
  • %totalpages% - the total number of pages for the document
  • %docsequence% - the doc sequence number
  • %docsequencetotal% - the total doc sequence number
  • %docname% - the instance display name of the document
  • %date% - the current system date in MM/DD/YYYY format
  • %BRCD . . .% - the custom barcode pattern containing optional characters

You can also include document metadata for presentation in the barcode.

The order of parts in the pattern string does not matter; whatever order is presented in the string defines the order of presentation. Text can be added anywhere is the string to establish a unique name or to set delimiters between any of the components. In this example, the barcode is defined to generate with the total numbers of pages, the instance display name of the document, and the system date with a [ _ ] added as the de facto delimiter for each value.
<exp:Barcode>
 <exp:Type>barcode128</exp:Type>
 <exp:Pattern>Page_%page%_of_%totalpages%_%date%_Doc_%docsequence%_of_%docsequencetotal%</exp:Pattern>
</exp:Barcode>
The example renders a barcode that looks like this:

Note:
  • The practice of entering a document name as text is used mainly when placing the Barcode on a document-by-document basis with a DocumentSet. It can be used, with either the AncillaryOutputOption or DocumentSet approaches, to add a document name that may differ from the instance display name (or may be a shortened version of the full document name).