0

我正在通过蓝牙从 Windows mobile 6 设备打印到 Zebra 打印机 mz220。打印效果很好。在这一点之后,打印机暂停,然后在继续打印之前添加一个新行。这远非理想,因为暂停和换行可能会在打印不应该有新行的行的过程中发生。

我在 .net 中使用 SerialPort 类,并且添加了一个 thread.sleep(1000) 以留出时间打印所有应该打印的数据。这解决了一个较早的问题,即未打印长收据上的某些数据。

                using (var serialPort = new SerialPort())
            {
                serialPort.PortName = this.PortName;
                serialPort.Open();
                Thread.Sleep(2500);

                serialPort.Write(text);
            }

任何想法为什么会发生这种情况以及如何解决这个问题。

谢谢

4

2 回答 2

2

您是在行模式下打印,还是这是 CPCL 格式?您使用的是连续介质还是标签/间隙介质?您的打印机可能被错误地配置为认为它正在打印标签(介质中有间隙)并跳过它认为间隙所在的位置。看着那(这:

! U1 getvar "media.type" 

SGD,如果您使用收据纸而不是标签,则应将其设置为日记帐。

! U1 setvar "media.type" "journal"
于 2011-10-25T13:41:40.697 回答
1

事实证明,我需要做的就是安装 Zebra 打印机 SDK 并针对作为 SDK 一部分提供的串行端口类重新编写代码。

于 2011-10-27T16:00:04.967 回答