POS打印机是否只支持Epson打印机? (与https://msdn.microsoft.com/en-us/library/windows/apps/mt426652相关)
如何在不显示“打印对话框”的情况下将文档直接发送到打印机?
答案 0 :(得分:5)
ESC / POS是Epson在各种POS打印机系统中使用的命令系统,旨在通过提供通用的适用性来避免不兼容的命令集。大多数现代打印机都支持ESC / POS。
所以,对于你的第一个问题,我认为答案是否定的。此POS printer API可用于支持ESC / POS的所有打印机。请参阅Epson ESC/POS with formatting。
对于第二个问题,使用POS printer
API,您可以在没有打印对话框的情况下进行打印。
但我认为,你想要的是Windows.Graphics.Printing namespace。对于在UWP应用程序中的此打印,必须显示打印预览UI以指导用户完成打印操作。
您可以参考官方POS printer sample和Printing sample。
2016年2月1日更新:
使用POS打印机API,您可以在没有打印对话框的情况下进行打印。
@Seb,这是我个人的结论,POS打印机的官方文档没有提及任何关于UI对话的内容。
但是在文档和官方样本的简短示例中,当我们使用pos设备进行打印时,我们首先创建一个打印作业,然后使用我们要打印的内容调用PrintLine(string)方法,最后,我们用ExecuteAsync方法执行它/它们,这个方法
以异步方式在收据打印机工作站上运行打印作业。
在此过程中,与普通打印不同,我们不会显示任何对话框。在正常打印中,当我们想要从我们的应用程序打印文档时,我们调用ShowPrintUIAsync()方法,此方法将显示一个对话框,为用户提供指导,帮助他们完成与打印相关的oricess。
@Hamed,这台Pos打印机API无法支持那些没有ESC / POS的设备,我不确定是否可以通过串口向打印机发送命令并从中获取响应,我认为您可以阅读打印机的开发文档。