GS1-128

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronBarcode 是否支持 GS1 UCC/EAN-128 符号?

条码值是正确的,并能准确识别。然而,问题在于目前显示的条形码值中缺少括号。

当使用 GS1-128 时,IronBarcode 目前的输出为01950123456789033103000123 (被识别为带有 GS1 签名的 128 码条形码).要在图像输出上显示的所需值是01950123456789033103000123.但是,条形码扫描仪将输出 (01)95012345678903(3103)000123,检测条形码类型为 GS1Code128。

使用以下代码:

using IronBarCode;

GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("01950123456789033103000123", BarcodeWriterEncoding.Code128GS1);
barcode.AddBarcodeValueTextBelowBarcode();
barcode.SaveAsPng("gs1code128.png");
using IronBarCode;

GeneratedBarcode barcode = BarcodeWriter.CreateBarcode("01950123456789033103000123", BarcodeWriterEncoding.Code128GS1);
barcode.AddBarcodeValueTextBelowBarcode();
barcode.SaveAsPng("gs1code128.png");
Imports IronBarCode

Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode("01950123456789033103000123", BarcodeWriterEncoding.Code128GS1)
barcode.AddBarcodeValueTextBelowBarcode()
barcode.SaveAsPng("gs1code128.png")
VB   C#

输出条形码

上述代码生成的 GS1-128 条形码带有默认分隔线。如果您想添加额外的分隔线,可以插入 \u00f。但是,请注意,当使用 AddBarcodeValueTextBelowBarcode 方法时,Unicode 字符 ñ (代码 0x00F1) 将被显示。为克服这一限制,另一种方法是处理字符串,并将修改后的值传递给 AddAnnotationTextBelowBarcode 方法。这样,您就可以在不显示 ñ 字符的情况下显示所需的条形码值。

using IronBarCode;
    string barcodeValue = "0195012345678903310300012300\u00f10000000123300000\u00f10000012312300000";
    string TrimString = barcodeValue.Replace("\u00f1","");
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeWriterEncoding.Code128GS1);
    barcode.AddAnnotationTextBelowBarcode(TrimString);
    barcode.SaveAsPng("gs1code128.png");
using IronBarCode;
    string barcodeValue = "0195012345678903310300012300\u00f10000000123300000\u00f10000012312300000";
    string TrimString = barcodeValue.Replace("\u00f1","");
    GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeWriterEncoding.Code128GS1);
    barcode.AddAnnotationTextBelowBarcode(TrimString);
    barcode.SaveAsPng("gs1code128.png");
Imports IronBarCode
	Private barcodeValue As String = "0195012345678903310300012300" & ChrW(&H00f1).ToString() & "0000000123300000" & ChrW(&H00f1).ToString() & "0000012312300000"
	Private TrimString As String = barcodeValue.Replace(ChrW(&H00f1).ToString(),"")
	Private barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeWriterEncoding.Code128GS1)
	barcode.AddAnnotationTextBelowBarcode(TrimString)
	barcode.SaveAsPng("gs1code128.png")
VB   C#

输出条形码

扫描条形码时,输出将是 (01)95012345678903(3103)000123(00)0000000123300000(00)00012312300000,条形码类型将被检测为 GS1Code128。