2012-11-10 77 views
0

是否有可能在没有实际打印机的情况下尝试使用ZPL制作的Windows Mobile应用程序?像模拟打印?在ZPL中模拟打印

此外,是否有任何有关Zebra编程语言初学者的网站/视频/书籍?

+0

由于Compact Framework中不支持[PrintDocument](http://msdn.microsoft.com/zh-cn/library/system.drawing.printing.printdocument(v = vs.80).aspx)控件,您很可能必须创建一个新的空白表单,重写OnPaint方法,然后在控件上绘制表单以查看任何预览。 – jp2code

+0

糟糕!刚刚注意到[PrintDialog](http://msdn.microsoft.com/zh-cn/library/system.windows.controls.printdialog.printdocument(v = vs.85).aspx)**在** Compact中受支持框架3.0 - 你可能想看看。编写一个'Document_Print'例程更容易预览,然后发送到打印机。 – jp2code

+0

是的,PrintDocument路径是我的选择之一。如果我继续这样做,如何创建可以发送到Windows Mobile中的Document_Print的“文档”或“报告”?我会打印包含条形码的标签。 –

回答

2

我从here正在学习ZPL:它由Zebra Website提供。我认为这非常有帮助。

如果要模拟打印,可以使用labelary

0

看看我的问题和答案PrintPage PrintPageEventHandler Is Printing Too Many Copies

我的问题是从Windows窗体打印,但您可以使用Windows Mobile做同样的事情。

您所做的是创建一个与您要打印的文档相同比例的虚拟窗体。用你想要他们说的话来设置标签。某些字段需要是INPUT字段,以便Windows Mobile应用程序可以调用它们并填写这些值。

例如,如果您有您需要设置客户地址,你的假表上的标签会lblCustomerStreetlblCustomerCitylblCustomerStatelblCustomerZip公共性质:

public string CustomerStreet { 
    get { return lblCustomerStreet.Text; } 
    set { lblCustomerStreet.Text = value; } 
} 

当您需要要打印,您需要将表单的大小与PrintDocument的页面大小进行比较。您可以使用该比例来增加或减少标签的大小,以便文本适合页面。

这确实需要一些时间去做,并且涉及到很多试验和错误。

但是,我发布在顶部的问题和答案将为您带来80%左右的方式。您只会关注我的代码的DocumentPrinted部分。

我的示例代码包括面板控件,标签控件,一个图像控件(公司徽标)的大小以及可以删除的自定义条形码控件。首先打印图像,然后是面板,然后是标签,最后是条码 - 因为在我的打印输出中,条码是最重要的,而且标签上的文字比面板制作的包装线更重要。面板只是让你的打印输出看起来很漂亮。

+0

我想我会去你建议的方法。由于我们的客户没有提供打印机,甚至不想提供远程PC,因此我可以访问其打印机的网站以进行标签输出预览。 你可以给我一个在Windows Mobile上捕捉表单并将它发送到打印机进行打印的头马吗? –