如何通过.net桌面应用程序直接打印到连接到串行端口的打印机

时间:2015-01-10 07:13:22

标签: c# .net printing serial-port desktop-application

我一直致力于使用.NET Framework 4.5和C#作为语言构建的桌面应用程序。要求打印机将连接在串口上,用户将通过端口号,波特率等应用程序提供端口设置等。

当用户点击打印按钮时,应直接打印到打印机而不显示打印对话框。 我从来没有从桌面应用程序打印,我也不知道如何实现这一点。

  1. 我是否需要特定于该打印机驱动程序的代码?
  2. 或者是否有通用方法将打印指令发送到连接到串口的打印机?
  3. 我可以将普通字符串发送到串口,但是如果我需要做一些格式化如绘制表格,如何让串口打印机打印格式化的表格及其中的值...例如账单。
  4. 非常感谢任何帮助。

    谢谢, 阿米特

1 个答案:

答案 0 :(得分:1)

您需要发送ESC / POS命令。这将控制字体,行高等以及正在传输的实际文本。

http://pyramidacceptors.com/cms/wp-content/uploads/2013/02/ESC_POS_Protocol_Commands_REV_B.pdf

另一个有用的问题:How to use esc/pos command with c#?

此外,无需重新发明轮子。检查Github是否有库:https://github.com/yukimizake/ThermalDotNet

就生成表格和其他此类非文本而言,您需要阅读目标打印机支持的命令集。如果您正在打印帐单,听起来就像是针对热敏打印机。图像/非文本支持因型号而异。