【问题标题】:How to print directly to a printer connected to serial port via .net desktop application如何通过 .net 桌面应用程序直接打印到连接到串行端口的打印机
【发布时间】:2015-01-10 07:13:21
【问题描述】:

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

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

  1. 我是否必须编写特定于该打印机驱动程序的代码?
  2. 或者有什么通用的方法可以将打印指令发送到连接到串口的打印机上?
  3. 我可以将普通字符串发送到串口,但是如果我需要做一些格式化,比如画一个表格,我怎样才能让串口打印机打印一个格式化的表格和里面的值......例如一张账单。

任何帮助将不胜感激。

谢谢, 阿米特

【问题讨论】:

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


    【解决方案1】:

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

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

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

    此外,无需重新发明轮子。在 Github 上查看库:https://github.com/yukimizake/ThermalDotNet

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

    【讨论】:

    • 该库运行良好。添加二维码打印的简单更改
    • 我也会尝试的......希望我可以修改更简单的。
    猜你喜欢
    • 1970-01-01
    • 2022-08-09
    • 1970-01-01
    • 2015-09-14
    • 2014-06-23
    • 2014-10-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多