通过LinePrinter API将条形码打印到Intermec PB20

时间:2008-08-25 16:34:25

标签: c# windows-mobile

有没有人知道如何从Windows Compact Framework应用程序将条形码打印到Intermec PB20蓝牙打印机?我们目前正在使用Intermec LinePrinter API,但无法找到打印条形码的方法。

5 个答案:

答案 0 :(得分:1)

谢谢大家的想法。直接打印到串口可能是最灵活的方法。在这种情况下,我们不想复制已经内置到Intermec dll中的所有工作来处理端口,打印机错误等。我们能够通过向打印机发送适当的代码将其切换为一种不同的模式,然后以这种方式传递直接打印机命令。

以下是我们的解决方案,以防其他人碰巧遇到与Intermec打印机一起使用的类似问题。以下代码是一个测试用例,它不会捕获打印机错误并重试等(请参阅Intermec代码示例。)

Intermec.Print.LinePrinter lp;

int escapeCharacter = int.Parse("1b", NumberStyles.HexNumber);
char[] toEzPrintMode = new char[] { Convert.ToChar(num2), 'E', 'Z' };

lp = new Intermec.Print.LinePrinter("Printer_Config.XML", "PrinterPB20_40COL");
lp.Open();

lp.Write(charArray2); //switch to ez print mode

string testBarcode = "{PRINT:@75,10:PD417,YDIM 6,XDIM 2,COLUMNS 2, SECURITY 3|ABCDEFGHIJKL|}";
lp.Write(testBarcode);

lp.Write("{LP}"); //switch from ez print mode back to line printer mode

lp.NewLine();
lp.Write("Test"); //verify line printer mode is working

Intermec的支持网站上有一个名为“技术手册”的技术文档,该文档描述了直接控制打印机的代码。关于Easy Print的部分介绍了如何打印各种条形码。

答案 1 :(得分:0)

上次我不得不打印条形码(尽管有打印机或框架)我使用了我需要的条形码的True Type字体。 (在我的例子中是EAN-13的东西),欧洲的条形码。

有些字体可以简单地编写数字(和/或支持时的字母),并且您可以获得任何扫描仪可以读取的完美条形码:)

Google是你的朋友。我不知道是否有免费的。

答案 2 :(得分:0)

感谢您的回答。有免费的字体可供选择 - 但是,PB20是一款手持式打印机,内置几种字体。它具有打印条形码的功能,可以通过串口直接操作。 Intermec提供.Net CF API以使打印“简单”,并且使用此API我们无法弄清楚如何告诉打印机打印条形码。

答案 3 :(得分:0)

抛弃所有API并直接使用串口API。

谈论打印机语言,你可以获得不错的结果。 所有其他方法都会导致沮丧。 不太好看,但这就是我的旧工厂的工作方式。 每天4k打印作业,没有人错过。

答案 4 :(得分:0)

Free 3 of 9

  

这是9个中的3个(有时称为“代码”   39“),广泛使用的条形码标准   包括大写字母,   数字和几个符号。这是   不是UPC的条形码(通用   价格代码)在产品上找到   商店。但是,大多数条形码   扫描仪将识别9个中的3个   细

相关问题