BarcodeGenerator

BarcodeGenerator

BarcodeGenerator for backend barcode images generation. supported symbologies: 1D: Codabar, Code11, Code128, Code39Standard, Code39Extended Code93Standard, Code93Extended, EAN13, EAN8, Interleaved2of5, MSI, Standard2of5, UPCA, UPCE, ISBN, GS1Code128, Postnet, Planet EAN14, SCC14, SSCC18, ITF14, SingaporePost ... 2D: Aztec, DataMatrix, PDf417, QR code ...

Constructor

new BarcodeGenerator(encodeType, codeText)

BarcodeGenerator constructor.
Parameters:
Name Type Description
encodeType Barcode symbology type. Use EncodeTypes class to setup a symbology
codeText Text to be encoded.
Source:
Throws:
BarcodeException
Example
// This sample shows how to create and save a barcode image.
let encode_type = EncodeTypes.CODE_128;
let generator = new BarcodeGenerator(encode_type);
generator.setCodeText("123ABC");

Methods

(static) importFromXml(filePath)

Imports BarCode properties from the xml-file specified and creates BarcodeGenerator instance.

Parameters:
Name Type Description
filePath The name of the file
Returns:
Type Description
BarcodeGenerator instance
Source:

exportToXml(filePath)

Exports BarCode properties to the xml file specified
Parameters:
Name Type Description
filePath The xml file
Returns:
Type Description
Whether or not export completed successfully. Returns True in case of success; False Otherwise
Source:
Throws:
IOException

generateBarCodeImage(format) → {String}

Generate the barcode image under current settings. This sample shows how to create and save a barcode image.
Parameters:
Name Type Description
format BarCodeImageFormat BarCodeImageFormat value (PNG, BMP, JPEG, GIF)
Returns:
Type Description
String base64 representation of image.
Source:
Example
let generator = new BarCodeGenerator(EncodeTypes.CODE_128);
let image = generator.generateBarCodeImage(BarCodeImageFormat.GIF);

getBarcodeType()

Barcode symbology type.
Source:

getCodeText()

Text to be encoded.
Source:

getParameters()

Generation parameters.
Returns:
Type Description
BaseGenerationParameters
Source:

save(filePath, format)

Save barcode image to specific file in specific format.
Parameters:
Name Type Description
filePath String Path to save to.
format BarCodeImageFormat BarCodeImageFormat value (PNG, BMP, JPEG, GIF)
Source:
Example
let generator = new BarCodeGenerator(EncodeTypes.CODE_128);
generator.save("file path", BarCodeImageFormat.GIF);

setBarcodeType()

Barcode symbology type.
Source:

setCodeText(codeText, encoding, insertBOM)

Encodes the Unicode {@code codeText} into a byte sequence using the specified {@code encoding}. UTF-8 is the most commonly used encoding. If the encoding supports it and {@code insertBOM} is set to {@code true}, the function includes a {@code byte order mark (BOM)}.

This function is intended for use with 2D barcodes only (e.g., Aztec, QR, DataMatrix, PDF417, MaxiCode, DotCode, HanXin, RectMicroQR, etc.). It enables manual encoding of Unicode text using national or special encodings; however, this method is considered obsolete in modern applications. For modern use cases, {@code ECI} encoding is recommended for Unicode data.

Using this function with 1D barcodes, GS1-compliant barcodes (including 2D), or HIBC barcodes (including 2D) is not supported by the corresponding barcode standards and may lead to unpredictable results.


 

This example shows how to use {@code SetCodeText} with or without a BOM for 2D barcodes.

	//Encode codetext using UTF-8 with BOM
	let gen = new BarcodeGenerator(EncodeTypes.QR, null);
 gen.setCodeText("車種名", "UTF-8", true);
	gen.save("barcode.png", BarCodeImageFormat.PNG);

	let reader = new BarCodeReader("barcode.png", null, DecodeType.QR);
	let results = reader.readBarCodes();
	for(let i = 0; i < results.length; i++)
	{
	    let result = results[i];
	    console.log("BarCode CodeText: " + result.getCodeText());
 }
	//Encode codetext using UTF-8 without BOM
	let gen = new BarcodeGenerator(EncodeTypes.QR, null);
 gen.setCodeText("車種名", "UTF-8", false);
	gen.save("barcode.png", BarCodeImageFormat.PNG);
	let reader = new BarCodeReader("barcode.png", null, DecodeType.QR);
 let results = reader.readBarCodes();
 for(let i = 0; i < results.length; i++)
 {
     let result = results[i];
     console.log("BarCode CodeText: " + result.getCodeText());
 }
	
Parameters:
Name Type Description
codeText CodeText string
encoding Applied encoding
insertBOM Indicates whether to insert a byte order mark (BOM) when the specified encoding supports it (e.g., UTF-8, UTF-16, UTF-32). If set to {@code true}, the BOM is added; if {@code false}, the BOM is omitted even if the encoding normally uses one.
Source: