3

当我在 Epson TM H6000 或 TM-88II 上打印大量数据时,打印机缓冲区已满,并非所有数据都将被打印。我使用 c# 和 SerialPort 将数据(通过 ESC)发送到打印机(文档: http: //support.epostraders.co.uk/support-files/documents/3/ajj-TM-H6000_DeveloperGuide.pdf)。

有什么办法可以避免缓冲区溢出?或者我应该减少数据重量并发送更多的小包?

提前致谢。

问候亚历克斯

4

1 回答 1

2

这是来自您链接的文档:

当接收缓冲区的剩余空间下降到 16 字节时,打印机状态变为“缓冲区已满”,并保持“缓冲区已满”,直到接收缓冲区中的空间增加到 26 字节......接收缓冲区中的剩余空间为 0 字节

...

传输每行数据后,使用 GS I 或 GS​​ r 检查打印机状态,并使用 4KB 接收缓冲区。发送一行数据,以免接收缓冲区变满。

这听起来像是对您的问题的完美建议。

于 2012-09-09T00:38:26.047 回答