BIRT Barcode PDF 417 Generator Introduction
BIRT Barcode is an Eclipse BIRT Custom Extended Report Item which helps you easily generate and print high quality 1D (linear) and 2D (matrix) barcodes in your BIRT reports
Barcode PDF 417 Introduction
PDF 417 is a stacked linear bar code symbol used in a variety of applications, primarily transport, identification cards, and inventory management. PDF stands for Portable Data File. The PDF417 symbology was invented by Dr. Ynjiun P. Wang at Symbol Technologies in 1991.
BIRT PDF 417 Generator - Valid Data Scope
- All 128 characters of ASCII including A-Z, a-z, 0-9, etc.
- Values 128-255 in accordance with ISO 8859-1. There are referred to as extended ASCII
PDF-417 Generators
OnBarcode provides several PDF-417 Generator components and software, including .NET PDF-417 Generator, Java PDF-417 Generator,C# PDF-417 Generator, VB.NET PDF-417 Generator,Android PDF-417 Generator, PDF-417 Generator.
How to Generate PDF-417 in BIRT Report
Below is a simple demo for you to print PDF 417 barcodes in BIRT report, for more details, view here: BIRT Barcode Generator - Developer Guide
- Copy com.onbarcode.barcode.birt_2.2.1.jar to your Eclipse plugins directory "\eclipse\plugins\"
- Create a new empty report in your BIRT Report barcoding project
- Open View "Palette", and add report item "Barcode" to your created BIRT report
- Right click the report item you have added, and select "Properties" menu item to edit barcode parameters
- You will find all barcode properties in the "General" tab.
Please note that the values for "Data" and "UPC/EAN Supplement Data" should be arounded by """", unless you are inputting expression - Change Barcode Type into PDF-417 in the general tab. Preview the report and a PDF-417 barcode image is printed on your BIRT report
- To encode barcode data from BIRT report data set, you need to input expression to "Data" property like "row["CUSTOMERNUMBER"]"
BIRT Barcode PDF-417 Generator - Property Settings
| Category | Properties | Value | Comments | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Basic | Property: Data | Type: expression
Default: ""
|
Barcode value to encode
PDF-417 Valid Data Char Set:
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| PDF 417 Special |
Property: Process Tilde | Type: boolean
Default: true |
Set the Process Tilde property to true, if you want use the tilde character "~" to specify special characters in the input data. Default is true.
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: PDF 417 Data Mode | Type: int
Default: AUTO |
Valid values:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: PDF 417 Error Correction Level | Type: int
Default: 2 |
Error correction level, values are from 0 to 8. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: PDF 417 Row Count | Type: int
Default: 3 |
The number of rows for PDF417. The value range is from 3 to 90. The default is 3. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: PDF 417 Column Count | Type: int
Default: 5 |
Number of columns. The value range is from 1 to 30. The default is 5. Increase this value, if your data size is large. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: PDF 417 Truncated | Type: boolean
Default: false |
truncated PDF417 may be used where space considerations are a primary concern and symbol damage is unlikely. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: 2D Barcode Structured Append |
Type: boolean
Default: false |
Set Structured Append property to true, then Structured Append is enabled. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: 2D Barcode Symbol Count |
Type: int
Default: 0 |
Set Symbol Count property to the number of total symbols which make the sequence. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: 2D Barcode Symbol Index |
Type: int
Default: 0 |
Set Symbol Index property to the position of current symbol in the secuence (Start with 0). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: 2D Barcode File Id |
Type: int
Default: 0 |
Set File Id property to be identified to the same file. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Barcode Size Related |
Property: Unit of Measure |
Type: int
Default: 0 (pixel) |
Unit of meature for all size related settings in the library.
Valid values: 0: pixel; 1: inch; 2: cm. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: X |
Type: float
Default: 1 |
Width of barcode bar module (narrow bar), default is 1 pixel | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: Y | Type: float
Default: 30 |
Height of barcode bar module, default is 30 pixel | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: Left Margin | Type: float
Default: 0 |
Barcode image left margin size. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: Right Margin | Type: float
Default: 0 |
Barcode image right margin size. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: Top Margin | Type: float
Default: 0 |
Barcode image top margin size. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: Bottom | Type: float
Default: 0 |
Barcode image bottom margin size. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: Resolution (in dpi) | Type: int
Default: 72 |
Barcode image resolution in DPI (Dots per inch). | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: Rotate |
Type: int
Default: 0 (rotate angle in 0 degree) |
Valid values:
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Font Style |
Property: Show Text |
Type: boolean
Default: true |
If true, display barcode data text under the barcode, otherwise do not display. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: Text Font Size |
Type: int
Default: 11 |
Barcode text font size. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Property: Text Margin |
Type: float
Default: 6 |
Space between barcode and barcode data text, default is 6 pixels | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PDF417 Barcode Data Characters Encoding in BIRT Reports
PDF417 supports various character sets, data lengths, and encoding modes. All these settings are configured in the Report Item Property view of the Image Report Item, ensuring alignment with BIRT best practices.
Valid Encoding Character Set for PDF417
PDF417 encodes multiple character sets, which you can configure in the Report Item Property view:
- Full ASCII (all 128 characters): This is the default encoding mode and works for most standard text data (e.g., URLs, plain text IDs) in BIRT reports.
- Extended ASCII (ISO 8859-1 values 128-255): Supports special characters such as accented letters, currency symbols, and punctuation marks, which are common in international BIRT reports (supports Locale/Internationalization).
- Up to 811,800 different character sets or data interpretations: Configurable via the ECI (Extended Channel Interpretation) mode in the Report Item Property view.
- Various function codewords: Used for control purposes, configurable in the PDF417 section of the Report Item Property view.
PDF417 Data Encoding Modes
PDF417 supports three compact encoding modes, which you can auto-select or manually set in the Report Item Property view via the "DataMode" property:
- Text Compaction Mode: Permits all printable ASCII characters (values 32-126 in accordance with ISO/IEC 646 (IRV)) and selected control characters. Ideal for plain text data in BIRT reports.
- Byte Compaction Mode: Permits all 256 possible 8-bit byte values. This includes all ASCII characters (values 0-127) and supports international character sets, binary data, and Unicode text.
- Numeric Compaction Mode: Permits efficient encoding of numeric data strings. Optimized for numeric IDs, transaction numbers, or other numeric data common in enterprise BIRT reports.
- Auto Mode: The PDF417 library automatically selects the most efficient encoding mode based on the input data. This is the recommended setting for most BIRT reports, especially those with mixed data types.
Note: Manually selecting an incompatible encoding mode (e.g., Numeric Compaction Mode for Unicode text) will cause encoding errors. Always use Auto Mode if you're unsure about the data type, or verify the Data Set field's data type before selecting a mode.
PDF417 Maximum Data Length
The maximum data length of a PDF417 depends on its encoding mode and error correction level (ECL). The following limits apply to ECL 0 (lowest error correction):
- Text Compaction Mode: Up to 1,850 characters.
- Byte Compaction Mode: Up to 1,108 characters (ideal for Extended ASCII or binary data in BIRT reports).
- Numeric Compaction Mode: Up to 2,710 digits (most efficient for numeric data).
PDF Encoding with Various Text Format in BIRT report
We'll walk you through encoding various data types in PDF417 barcodes within BIRT reports, including ASCII text, Unicode text, binary data, GS1 business messages, and ECI mode data. All steps use the Report Item Property view and BIRT Scripting features.
Printable ASCII Text
PDF417 supports all 95 printable ASCII characters (values 32-126) with simple configuration:
- Select the Image Report Item and open the Report Item Property view.
- Set the "DataMode" property to "Text" or "Auto" (recommended).
- Use Data Binding to map the "Data" property to a Data Set field containing printable ASCII text (e.g., "PRODUCT_NAME").
- Save the Report Design file and preview the report to confirm the PDF417 generates correctly.
Non-Printable ASCII Text
Non-printable ASCII characters (e.g., Carriage Return [CR], Line Feed [LF], Tab) cannot be directly input in your Java code or BIRT Data Set. Follow these steps to encode them:
- In the Report Item Property view, set the "ProcessTilde" property to "true". This enables the PDF417 generator to interpret tilde (~) as an escape character for non-printable characters.
- Set the "DataMode" property to "Byte" (required for encoding non-printable characters).
- Replace each non-printable character with "~" followed by its three-digit ASCII value.
For example:
- Carriage Return (CR, ASCII 13) > ~013
- Line Feed (LF, ASCII 10) > ~010
- Tab (ASCII 9) > ~009
- Set the "Data" property using a BIRT Expression that includes the escaped non-printable characters (e.g., "Data~013PDF417" encodes "Data" + CR + "PDF417").
Encode Unicode Text in PDF417
PDF417 can easily encode Unicode text (e.g., Chinese, Japanese, Arabic) in BIRT reports. Follow these steps to configure this in the Report Item Property view:
- Select the Image Report Item and open the Report Item Property view.
- Enable the "EncodeUnicodeText" property (set to "true"). This tells the PDF417 generator to use UTF-8 encoding for the input data.
- Use Data Binding to map the "Data" property to a Data Set field that contains Unicode text (e.g., "CUSTOMER_NAME" with Chinese characters).
- Set the "DataMode" property to "Byte" (required for Unicode encoding).
- Test the report in the BIRT Web Viewer to confirm the Unicode text is encoded correctly. Scan the PDF417 to verify the text appears as expected.
PDF417 Barcode Dimension Width and Height Settings in BIRT Reports
Customize the size and dimensions of your PDF417 barcodes in BIRT reports using the Report Item Property view. You can adjust module size, rows, columns, quiet zones, and unit of measure to ensure scannability.
The following PDF417 dimension settings are configurable in the Report Item Property view:
The following PDF417 dimension settings are configurable in the Report Item Property view:
- UOM (Unit of Measure): Select the unit for size settings (PIXEL, CM, or INCH). This ensures consistency with the report's Master Page settings.
- X (Module Width): The width of each PDF417 module. The minimum module width is defined by your application's specifications; smaller modules create smaller barcodes but may be harder to scan, especially in printed BIRT reports.
- XtoYRatio: The ratio of module width (X) to module height. The default value is 0.3333333f (1:3).
- RowCount: The number of rows in the PDF417 barcode, ranging from 3 to 90.
- ColumnCount: The number of data columns per row, ranging from 1 to 30.
- Quiet Zones: Set "LeftMargin", "RightMargin", "TopMargin", and "BottomMargin" to define the empty space around the PDF417. The minimum quiet zone width is 2X (twice the module width), as per PDF417 standards.
- Resolution: Set the "Resolution" property (e.g., 96 DPI, 300 DPI) to control the image quality. Higher resolution is recommended for printed BIRT reports to ensure sharp modules.
- ImageFormat: Set the output image format (e.g., PNG, JPEG) to meet your BIRT Output Format requirements (e.g., PDF, HTML, Excel).
Advanced PDF417 Options in BIRT Reports
Take advantage of advanced PDF417 features in BIRT reports, including error correction levels (ECL), compact (truncated) PDF417, and Macro PDF417. All these options are configured in the Report Item Property view.
PDF417 Error Detection and Correction (ECL)
Each PDF417 symbol contains at least two error correction codewords, which provide capability for both error detection and correction. The error correction level is selectable in the Report Item Property view via the "ECL" property.
The following are the error correction levels and their corresponding number of error correction codewords:
The following are the error correction levels and their corresponding number of error correction codewords:
- ECL 0: 2 error correction codewords (lowest error correction, maximum data capacity)
- ECL 1: 4 error correction codewords
- ECL 2: 8 error correction codewords
- ECL 3: 16 error correction codewords
- ECL 4: 32 error correction codewords
- ECL 5: 64 error correction codewords
- ECL 6: 128 error correction codewords
- ECL 7: 256 error correction codewords
- ECL 8: 512 error correction codewords (highest error correction, minimum data capacity)
Create Compact (Truncated) PDF417 Barcodes
Compact PDF417 (also called Truncated PDF417) is used when space is a primary concern and symbol damage is unlikely. It removes the right-hand row indicator and stop pattern to reduce size.
To create compact PDF417 in BIRT reports:
To create compact PDF417 in BIRT reports:
- Select the Image Report Item and open the Report Item Property view.
- Set the "Truncated" property to "true" in the PDF417 section.
- Configure other required PDF417 properties (Data, DataMode, ECL, dimensions) as needed.
- Update the onCreate Event Handler script to apply the Truncated setting (check your PDF417 library's documentation for specific hints).
Note: Compact PDF417 is less resilient to damage than standard PDF417. Only use it in controlled environments where the barcode is unlikely to be scratched or smudged (e.g., digital BIRT reports viewed on screens).
Create Macro PDF417 Barcodes
Macro PDF417 provides a mechanism for splitting large data into blocks and representing it in multiple PDF417 symbols. This is similar to the Structured Append feature in QR Code and Data Matrix 2d barcodes.
Each Macro PDF417 symbol contains additional control information to enable the original data file to be properly reconstructed, regardless of the scanning sequence. Up to 99,999 individual PDF417 symbols can be used for Macro PDF417 encoding.
To create Macro PDF417 in BIRT reports:
Each Macro PDF417 symbol contains additional control information to enable the original data file to be properly reconstructed, regardless of the scanning sequence. Up to 99,999 individual PDF417 symbols can be used for Macro PDF417 encoding.
To create Macro PDF417 in BIRT reports:
- Select the Image Report Item and open the Report Item Property view.
- Enable the "MacroPDF417" property to "true" in the PDF417 section.
- Set the "MacroSymbolCount" property to the total number of PDF417 symbols needed to store the full data (e.g., 3 for splitting data into 3 barcodes).
- Set the "MacroSymbolIndex" property to the sequence number of the current PDF417 (starts at 0; e.g., 0 for the first barcode, 1 for the second).
- Set the "MacroFileId" property to a unique integer (e.g., 12345). All symbols in the same Macro PDF417 sequence must have the same MacroFileId.
- Use a Data Set with a Group (a component that organizes data by a field) to split the data into chunks. Bind each chunk to a separate Image Report Item in the Detail Row of a Table to generate multiple PDF417 barcodes.
Common Asked Questions
What is PDF417 used for?
PDF417 is a high density, 2D stacked barcode format used in a variety of applications, such as driver's license, airline boarding pass, transport, and inventory management.
Using BIRT Barcode Generator plugin, you can easily generate, insert PDF417 barcode in BIRT reports in Report Designer,
and customize the PDF417 appearance in Property Editor in Eclipse BIRT.
What is the maximum capacity of a PDF417?
The maximum number of characters a PDF417 barcode at lowest error correction level (0).
- Text Compaction mode: 1,850 characters
- Byte Compaction mode: 1,108 characters
- Numeric Compaction mode: 2,710 characters
PDF 417 Data Mode in Property Editor in Eclipse BIRT.
What is the aspect ratio of a PDF417?
The aspect ratio of the printed PDF417 barcode shall be defined by two dimensions: s
- X: the dimension width of the narrowest bar and narrowest space. Using BIRT Barcode plugin, you can customize X value using property
X - Y: the dimension height of the narrowest bar and narrowest space. Using BIRT Barcode Generator plugin, you can customize Y value using property
Y
What is the difference between a PDF417 and a QR Code?
Both PDF417 and QR Code are 2D barcode formats. PDF417 can be scannable even if up to 50% of it is damaged. QR Code can accept up to 30% damages.
BIRT Barcode supports both PDF417 and QR Code 2d barcode generations in Eclipse BIRT Report Designer and Report Viewer.