JasperReports GS1-128 Generator Library

Java GS1-128 Barcode Generator Library to create, print GS1-128 images in JasperReports, iReport reports

GS1 128 (EAN 128) for iReport plugin generate, create GS1 128 (EAN 128) barcode in iReport Jasper Reports

  • Simple to generate, print GS1 128 / EAN 128 barcodes in iReport reports
  • Redistribute iReport GS1 128 / EAN 128 barcode library (jar) easily
  • Easy to use with no barcode fonts or programming required
  • No reguistration key or activation code needed
  • Completely developed in NETBeans iReport Custom Extended Report Item framework.
  • Printed GS1-128 barcodes are compatible with latest GS1 specifications
  • Mature iReport GS1 128 / EAN 128 barcode generation plugin using Java Barcode Generator library
Here we will learn how to create, insert, print GS1-128 (also known as EAN-128) barcodes within JasperReport reports using Jaspersoft Studio (official Eclipse-based report designer) or iReport Designer (legacy Swing-based report designer). Here's a list summarizing the full content which will be covered in the page.
  • Quick steps to insert and generate GS1-128 as a Barcode image in a JRXML (XML source template file) using Jaspersoft Studio or iReport Designer, including GS1 data formatting requirements.
  • Detailed explanations of GS1-128's basic characteristics, including its encodable character set and function characters (FNC1, FNC2, FNC3, FNC4) relevant to JasperReport configurations.
  • Guidance on GS1-128 check digit handling, including how the JasperReport Barcode Library (core Java reporting engine) automatically adds and manages the mandatory check digit.
  • Configuration of GS1-128 dimension settings (unit of measure, bar width, height, margins) in the Report Item Property panel, aligned with JasperReport's Formatting & Style terms.


JasperReport Barcode GS1 128 / EAN 128 Generator Introduction

Top
iReport Barcode is a NETBeans iReport Custom Extended Report Item which helps you easily generate and print high quality 1D (linear) and 2D (matrix) barcodes in your iReport reports.

EAN-128 / GS1-128 Introduction

GS1-128 is an application standard of the GS1 implementation using the Code 128 barcode specification. The former correct name was UCC/EAN-128. Other no longer used names have included UCC-128 and EAN-128. GS1-128 uses a series of Application Identifiers to include additional data such as best before dates, batch numbers, quantities, weights and many other attributes needed by the user.

iReport EAN 128/GS1 128 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.

GS1 128 Generators

OnBarcode provides several GS1 128 Generator components and software, including GS1 128 Generator .NET, GS1 128 Generator Java, GS1 128 Generator C#, GS1 128 Generator VB.NET, GS1 128 Generator.






How to generate GS1-128 barcodes in JasperReport?

Top
Here are simple steps to create a GS1-128 (EAN-128) barcode in iReport. View details: How to generate and print barcodes in iReport reprts.

One more guide for you to stream GS1-128 barcodes in iReport using Java Barcode Generator buildin Servlet web application.
  1. Create a new report, and add barcode.jar to report classpath from the downloaded evaluation package
  2. Drag an image item in Palette to report
  3. Click "Cancel" button, in "Select an image file" window
  4. Right click on the image and edit its "Properties", and set property "Expression Class" to "net.sf.jasperreports.engine.JRRenderable";
  5. To input GS1-128 barcode data manually, set property "Image Expression" to "new com.onbarcode.barcode.jasper.JasperRenderer(
    com.onbarcode.barcode.jasper.BarcodeGenerator.draw(13, "(12)12345", "", "X=2&Y=60"))
    "
  6. To print GS1-128 with data from database, please set property "Image Expression" to "new com.onbarcode.barcode.jasper.JasperRenderer(
    com.onbarcode.barcode.jasper.BarcodeGenerator.draw(13, $F{data field} + "", "", "X=2&Y=60"))
    ";

    BarcodeGenerator.draw method accepts 4 parameters:
    the second is the barcode data to encode, in String,
    the last is the barcode settings String. More details about barcode settings string, please check the GS1-128 property table below




GS1-128 Barcode Basic Characteristics in JasperReport Reports

GS1-128 (EAN-128) has specific characteristics that define its encodable data and structure. These characteristics are automatically handled by the JasperReport Barcode Generator Library, but understanding them helps in configuring and troubleshooting your JasperReport GS1-128 barcodes.


Encodable Character Set

GS1-128 supports a specific set of characters, aligned with GS1 General Specifications. The JasperReport Barcode Library automatically handles character encoding, so you only need to ensure your data is correctly formatted. The encodable character set includes:
  • The subset of ISO/IEC 646 International Reference Version defined in the GS1 General Specifications. This is the primary character set for AI element strings.
  • Characters with ASCII values 128 to 255 (extended ASCII), which can be encoded in GS1-128 symbols (via the Code 128 symbology foundation).
  • Four non-data function characters:
    • FNC1: Used to indicate the start of a GS1 data string (automatically inserted by the JasperReport Barcode Library).
    • FNC2: Not used in GS1-128 barcodes. No need to configure this in the Report Item Property panel.
    • FNC3: Not used in GS1-128 barcodes. No configuration required.
    • FNC4: Not used in GS1-128 barcodes. No configuration required.
  • Four code set selection characters (including single character code set shift). Automatically inserted by the JasperReport Library based on the data being encoded.
  • Three start characters and one stop character. Also automatically inserted by the JasperReport Barcode Library.



Note: Do not manually add function characters, code set selection characters, start characters, or stop characters to the "Data" field in the Report Item Property panel. The JasperReport Library will insert these characters automatically to ensure GS1-128 compliance. Manual insertion will cause encoding errors and invalid barcodes.


GS1-128 Check Digit Character

Like Code 128 (its foundation), GS1-128 includes one mandatory symbol check character. This check digit ensures data integrity and is critical for reliable scanning.
  • The check digit is automatically calculated and added by the JasperReport Barcode Library. You do not need to manually compute or add it.
  • The check digit is not displayed in the Human Readable Interpretation (HRI). The text shown below the barcode.
Note: The "AddCheckSum" property in the Report Item Property panel is not applicable to GS1-128 barcodes. The JasperReport Library automatically adds the check character before the stop character for every GS1-128 symbol, regardless of this property's setting. Do not attempt to enable or disable "AddCheckSum" for GS1-128, as it will have no effect and may cause confusion.


GS1-128 (EAN-128) Barcode Dimension Size in JasperReport Reports

You can fully customize the dimension size of GS1-128 barcodes in JasperReport reports to meet your report design and scanning requirements. All dimension settings are configured in the Report Item Property panel.

The following dimension properties are available in the Report Item Property panel for GS1-128 barcodes.
  • UOM (Unit of Measure): The unit used for all dimension settings. Three options are available: PIXEL, CM, or INCH. Select the unit that aligns with your report's Page Format (Paper size, e.g., A4, Letter).
  • X: The width of the narrow bar module (the smallest unit of the barcode). The minimum width is defined by your application's specifications. Ensure it is sufficient for scanning (typically 1-3 pixels for digital reports, 0.1-0.3 mm for printed reports).
  • Y: The height of the barcode module (the vertical length of the bars). A sufficient height (e.g., 60-120 pixels) ensures readability.
  • LeftMargin, RightMargin: The Margin (External spacing around an element) or quiet zone around the GS1-128 barcode. The minimum width of each margin is 10X (10 times the narrow bar width X). This is a GS1 requirement for reliable scanning.
  • TopMargin, BottomMargin: Vertical spacing around the barcode (optional but recommended) to avoid overlapping with other report elements, such as Static Text (Fixed label text) or Text Field (Dynamic field displaying data/variables).

JasperReport Barcode GS1-128 Generator - Property Settings

Top
Category Properties Value Comments
Basic Property: Data Type: expression
Default: ""
  • If you encode the barcode data text directly, the text string should be around by " " ", such as "12345"

  • If you encode the barcode data from dataset, input the expression, such as row["CUSTOMERNUMBER"]
Barcode value to encode.

GS1 128 / EAN 128 Valid Data Char Set:

  • all 128 characters of ASCII

  • values 128-255 in accordance with ISO 8859-1. There are referred to as extended ASCII.

Property: Add CheckSum Char Type: boolean
Default: false
Add CheckSum Char property is not applied here.
 
GS1 128
EAN 128
Special
Property: Process Tilde Type: boolean
Default: false
Set the Process Tilde property to true, if you want use the tilde character "~" to specify special characters in the input data.

  • 1-byte character: ~0dd/~1dd/~2dd (character value from 000 ~ 255); ASCII character '~' is presented by ~126
    Strings from "~256" to "~299" are unused
  • 2-byte character (Unicode): ~6ddddd (character value from 00000 ~ 65535)
    Strings from "~665536" to "~699999" are unused
  • for GS1 AI Code:
    ~ai2: AI code with 2 digits
    ~ai3: AI code with 3 digits
    ~ai4: AI code with 4 digits
    ~ai5: AI code with 5 digits
    ~ai6: AI code with 6 digits
    ~ai7: AI code with 7 digits
 
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:

  • 0 (rotate angle in 0 degree)
  • 90 (rotate angle in 90 degree)
  • 180 (rotate angle in 180 degree)
  • 270 (rotate angle in 270 degree)
 
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


Summary

This guide has covered how to create and customize GS1-128 (EAN-128) barcodes in JasperReport reports using Jaspersoft Studio or iReport Designer. We covered all key aspects, including basic GS1-128 generation, data formatting, encodable character sets, check digit handling, and dimension customization.







































Start with free trial package:








































Terms of Use | Privacy Policy
Copyright © OnBarcode.com . All rights reserved.