【发布时间】:2015-01-26 07:29:27
【问题描述】:
我编写了标签打印软件(Windows、WPF、C#、.net 4.5),它可以使用 Datamax H-Class 打印机愉快地打印条形码,但在打印以字符 C 开头的条形码时除外/p>
当我尝试这样做时,条形码会被截断,直到其中的第一个数字字符。
小写c 可以正常工作,但由于我们的一些模型代码确实以C 开头,我需要找到解决此问题的方法。
我想一定有某种转义字符允许这样做?但我没能通过谷歌找到它。
我也不是 100% 确定这是 code128 问题,它是否与 Datamax H-Class 打印机、Datamax Windows C# SDK 或可能是我们在打印机上使用的 code128 字体有关?
抱歉,细节太模糊了,非常感谢任何有关下一步检查的帮助或建议。
更新。
以防万一这有任何用处(我很遗憾地对此表示怀疑)我用来将条形码发送到打印机的代码(在所有条形码字符串不以 C 开头的情况下成功)如下:
ParametersDPL paramDPL = new ParametersDPL();
paramDPL.Align = ParametersDPL.Alignment.Left;
paramDPL.Rotate = ParametersDPL.Rotation.Rotate_270;
paramDPL.IsUnicode = false;
paramDPL.TextEncoding = Encoding.ASCII;
paramDPL.WideBarWidth = 7;
paramDPL.NarrowBarWidth = 4;
paramDPL.SymbolHeight = 60;
//if the stockCode starts with 'C' the barcode will be truncated
docDPL.WriteBarCode("E", String.Format("{0} {1}", stockCode, serialNumber), COL_1, ROW_5, paramDPL);
ParametersDPL 对象来自Datamax C# SDK。我在代码中看到的唯一可能的问题可能是IsUnicode 或TextEncoding 属性的设置,但我已经对它们进行了相当多的试验,但没有任何效果。 ParametersDPL 上的其他属性似乎都不是罪魁祸首。
【问题讨论】:
-
你能和我们分享一些你的代码吗?这是一种形式的抽象问题
-
你去 ymz。遗憾的是,我认为实际打印代码没有任何问题,因为它在所有其他情况下都能正常工作。
-
“stockCode”背后有什么逻辑吗?还是只是一个带有字母的字符/字符串?
-
@Ted 感谢您的回复,老实说,对于 7 年前提出的问题,我并没有太大希望得到回复。如果还有其他需要帮助的地方,我会尽快回复您。
-
@ArchanJoshi 我不知道我能帮上多少忙,因为我可能已经 7 年没有做很多 DPL 工作了!很高兴听到您解决了问题 - 您也应该回答自己的问题,以帮助他人,并在未来提醒自己!
标签: barcode barcode-printing code128