//由于主观原因,请不要关闭这篇文章 我正在开发一个表单填写winform应用程序,它在提交信息时生成PDF文件。 PDF文件需要包含编码用户输入的一些信息的条形码。用户打印PDF文件并在其上放置签名并将其传真给我们。我需要建议选择用于此应用程序的条形码符号系统。 条形码需要满足以下条件。
1)The barcode need to encode upto 120 characters
由于条形码需要对大量信息进行编码,我认为2D条形码会更好,因为它可以存储更高的信息密度。
2)Only upper case alphabets and numbers need to be encoded
虽然大多数2D条形码可以存储多个数字,但是有一些1D条形码,例如代码39,不能代表所有字母表。
3)Preferable size of barcode is 1.5 inch height and 8 inch width
这是最具挑战性的要求。我打算将条形码放在帐户ID等信息下面。因此,如果条形码采用矩形的形状,其信息容量随其宽度增加,那将是一件好事。此要求适用于一维条码。此外,由于2D条形码采用正方形的形状,因此条形码的任何一侧都会浪费大量空间。
4)Error correcting capability
2D条形码具有更好的纠错能力。只有一些1D条形码有纠错功能。这不是必要条件。
5)The barcode need to be faxed from one country to another
条形码在PDF上生成。 PDF将被打印,然后需要传真。因此,条形码需要具有高分辨率。否则,我担心扫描仪无法正确解码数据。我认为200dpi的解析对于条形码图像来说已经足够了。传真2D条形码是否有任何问题,因为它们需要水平和垂直扫描。我听说传真在垂直和水平方向上有不同的分辨率。扫描条形码时是否会产生任何问题。
6)Easiness to program in c# to generate barcode
Atlast但并非最不重要,我需要在c#中对此条形码生成进行编程。所以,应该有一些免费的库可供使用。 Aspose条形码是一个很好的条码。但它的成本很高。
我遇到过以下条形码。我检查了其中一些类型的规范。但无法做出最终决定。一旦我选择条形码并开始编程,我就无法回头了。
1D:UPC / EAN / JAN,Code 39,Code 128,Interleaved 2 of 5,Codabar,Code 11,Code 93,NEC 2 of 5,Matrix 2 of 5,Trioptic Code, 堆叠1D:PDF417,Micro PDF417,Codablock A& F,复合代码 2D:数据矩阵,QR码,微QR码,Aztec码,Maxicode
我正在考虑使用PDF417。它有什么缺点吗?
答案 0 :(得分:2)
我不知道所有格式,所以我不能说哪个是最好的。
您提到的一些1D条形码(UPC / EAN)仅支持少量数字字符。我知道Code 128支持可变长度的字母数字值,因此可能是一个很好的1D候选者。
某些条形码阅读器不支持2D条形码,这通常是使用1D的原因。
在2D中,您应该看到是否存在不需要条形码为正方形的符号系统,因为这会将您的最大尺寸限制为1.5 x 1.5英寸。
有几个网站允许您将条形码创建为图像 - 也许您应该创建一个包含这些条形码的PDF并传真它们以查看会发生什么。
我不知道有任何免费的库来渲染它们;还有fonts允许创建一维条形码,你可以embed these fonts into your winforms application。
编辑:8x1.5英寸时200 dpi可以横向提供1600点,垂直可以使用300点。条形宽度为1像素的code128条形码将在1400点以下出现。在wikipedia page for QR上有一个示例,最多可包含174个字符,大小为57x57,并且纠错率很高。如果我没有误会,每个点可以用200dpi的5x5像素表示。