Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用ZXing.Net生成GS1数据矩阵_C#_.net_Barcode_Zxing_Datamatrix - Fatal编程技术网

C# 使用ZXing.Net生成GS1数据矩阵

C# 使用ZXing.Net生成GS1数据矩阵,c#,.net,barcode,zxing,datamatrix,C#,.net,Barcode,Zxing,Datamatrix,我需要什么 是使用以下测试内容生成工作GS1数据矩阵: (240)1234567890(10)AA12345(11)123456(21)1(96)1234567 步骤 我已经从这里下载了nuget软件包: 和 我创建了一个控制台应用程序,它使用以下代码: private static void DoGs1DataMatrixStuff() { var writer = new BarcodeWriter { Format = BarcodeFormat.DATA

我需要什么

是使用以下测试内容生成工作GS1数据矩阵:

(240)1234567890(10)AA12345(11)123456(21)1(96)1234567

步骤

我已经从这里下载了nuget软件包:

我创建了一个控制台应用程序,它使用以下代码:

private static void DoGs1DataMatrixStuff()
{
    var writer = new BarcodeWriter
    {
        Format = BarcodeFormat.DATA_MATRIX
    };

    writer
        .Write("(240)1234567890(10)AA12345(11)123456(21)1(96)1234567")
        .Save(@"C:\Temp\barcode.png");
}
没有明显的特定GS1_数据矩阵格式我可以使用

这给了我

如果通过我的智能手机上的扫描仪应用程序读取,会给出我最初呈现的文字内容,而不是我期望的GS1的FNC1格式:

(240)1234567890(10)AA12345(11)123456(21)1(96)1234567

而它应该是

2401234567890 10AA12345 11123456211 961234567

从另一个来源(不是我可以使用的来源)我得到了这个条形码:

使用我的智能手机应用程序读取正确的数据

问题

如何使用ZXing.Net重新创建这个工作的GS1数据矩阵

另请参见


Chris Bahns对此提出了与我相同的担忧,但他的请求没有得到有效的答复。

您必须使用ASCII字符29(GS-组分隔符)的格式化字符串:

240123456789010AA1234511123456211961234567

(将“”替换为ASCII 29)

自版本0.15以来,ZXing.Net支持带有ASCII编码器的GS符号。它在生成的datamatrix图像中用FNC1码字(232)替换ASCII 29值


这只是一个低水平的支持。没有内置类或类似的东西可以理解固定或可变长度的AI(应用程序标识符)(类似于vCards、vEvent、ISBN等的结果解析器类)。

就是这样:
?这会导致
消息包含iso-8859-1编码以外的字符。
。这与
条码格式.数据矩阵
有关,如果我将其切换到
QR\U代码
,则不会出现这种错误,但当然数据不好,因为
显示为
(QR\U代码无法处理)。不,不是那个字符。ASCII 29不可打印。例如,您可以使用以下代码段
writer对这样的字符串进行编码
如果使用具有固定数据长度的应用程序标识符,则不需要每个
(char)29
。zxing不支持带有QR代码的GS1。