我有TM200打印机..
供应商似乎没有为此提供任何好的驱动程序..
我认为ESC / POS是一种方法。
所以我可以通过网络直接将数据发送到打印机,或者通过使用.NET和win API的Windows中的原始打印发送数据。
我想知道缓冲区大小。如何不溢出打印机?我看到它有96K字节缓冲区。使用假脱机程序打印时如何知道不发送超过96k字节? 即使我使用ESC / p打印,我怎么知道何时发送下一个数据?
其他方法正在使用OPOS
除了.NET中所需的DLL之外,系统还需要任何特定的驱动程序吗?值得用这个吗?
答案 0 :(得分:3)
这很常见。 Windows打印机驱动程序仅在打印机可以在具有可自由寻址像素的图形模式下运行时才有用。廉价的冲击或热敏打印机不能很好地支持它。如果他们支持它,那么它们将会大大减速,输出速度可能会慢十倍。因此POS打印机经常以原始模式运行。您可以直接发送打印机命令,通常是以ESC代码(0x1b)开头的转义序列。有关支持的命令,请参阅打印机驱动程序。
没有溢出缓冲区的危险。低级驱动程序与打印机握手,一次一个字节或USB帧。如果您向打印机发送大量数据,那么WritePrinter()调用将停止,等待打印机赶上。