0

我有 TM200 打印机..
供应商似乎没有为此提供任何好的驱动程序..

我看到 ESC/POS 是一种方法。
所以我可以通过网络直接将数据发送到打印机,或者通过使用 .NET 和 win API 在 Windows 中进行原始打印。

我想知道缓冲区大小。如何不溢出打印机?我看到它有 96K 字节的缓冲区。使用假脱机程序打印时,它如何知道不发送超过 96kbytes ?
即使我使用 ESC/p 打印,我如何知道何时发送下一个数据?

其他方法是使用 OPOS
除了 .NET 中需要的 dll,系统是否需要任何特定的驱动程序?值得使用这个吗?

4

1 回答 1

3

这很常见。Windows 打印机驱动程序仅在打印机可以在具有自由可寻址像素的图形模式下运行时才有用。这在廉价的冲击或热敏打印机上没有得到很好的支持。如果他们完全支持它,那么他们会大大减慢速度,输出很容易慢十倍。因此 POS 打印机经常以原始模式运行。您可以直接发送打印机命令,通常是以 ESC 代码 (0x1b) 开头的转义序列。有关支持的命令,请咨询打印机驱动程序。

没有溢出缓冲区的危险。低级驱动程序与打印机握手,一次一个字节或 USB 帧。如果您向打印机发送大量数据,则 WritePrinter() 调用将停止,等待打印机赶上。

于 2011-07-09T14:29:07.473 回答