所以我继承了这段代码,或者应该说,有人开发了此代码并继续前进,现在我们遇到了问题,我正在研究它...

我们正在生成c128条码,通过对其进行认证后,他们注意到了一个我看不出的问题。条/间距的宽度为10.5密耳,可接受范围为15-21密耳(1密耳= .001英寸)。

渲染代码基于以下库:http://www.codeproject.com/KB/GDI-plus/GenCode128.aspx,但已对其进行了一些修改...

生成的条形码均为字母数字,无特殊字符。我认为条形+空格的宽度取决于要编码的字符。

以下是正在使用的设置:

settings.Font = new Font ( FontFamily.GenericSansSerif, 12 );
settings.TopMargin = 10
settings.BottomMargin = 10
settings.LeftMargin = 10
settings.RightMargin = 10
settings.BarCodeHeight = 80
settings.DrawText = true
settings.BarCodeToTextGapHeight = 10
settings.InterCharacterGap = 2

如果我在猜测,我认为是因为条形的宽度是基于条形码的高度,而不是条形码的高度是基于文本和条形码的长度。但是我对规范不是很熟悉(即使在审查后也是如此),而且充其量我还是C#的新手。

最佳答案

这不是一个直接的答案,但我强烈建议使用经过良好测试的库来生成条形码...要正确设置条形码并非易事,因为存在一些陷阱。一些免费的...

.NET的2个免费条形码库:
http://barcoderender.codeplex.com/
http://www.codeproject.com/KB/graphics/BarcodeLibrary.aspx

关于C#: Generating Code 128 Barcode (width of bars/spaces),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7027644/

10-14 17:51
查看更多