如何解决如何使用 Microsoft POS 打印机画线
我正在使用 Microsoft 服务点 SDK,我正在我的应用程序和随 SDK 提供的示例中进行测试,以尝试使用与此类似的代码打印一行:
posPrinter.DrawRuledLine(PrinterStation.Receipt,"0,500",LineDirection.Horizontal,1,LineStyle.BrokenLine,1);
我收到此错误:
POSControlException ErrorCode(Illegal) ExtendedErrorCode(0) 发生:方法 DrawRuledLine 抛出异常。试图对设备执行非法或不受支持的操作,或者使用了无效的参数值。
Microsoft POS 倾向于抛出非常一般的错误,我不知道我做错了什么。我在其他方法上也有类似的错误,结果证明是因为我传递了一个不太有效的参数,比如宽度太大。但是我测试了各种组合,但总是失败。并且没有足够的文档说明它接收到的参数。
我需要传递什么参数给这个方法来画一条线?这是与 Microsoft POS 划清界限的首选方式吗?
解决方法
Microsoft Point Of Service(UnifiedPOS 实现的一部分)是一个具有抽象标准规范的 API,不具备真正打印机的所有功能。
如果您的打印机和运行它的服务对象没有 DrawRuledLine 功能,您将收到该错误。
ErrorCode Enumeration (POS for .NET v1.12 SDK Documentation)
非法
试图对设备执行非法或不受支持的操作,或者使用了无效的参数值。
可以通过检查 CapRecRuledLine(CapSlpRuledLine for Slip station) 属性的值来提前确认该功能的存在与否。
如果您想使用此 DrawRuledLine 方法在收据上画一条线,您需要切换到支持该功能的打印机和服务对象。
如果您不想更换打印机,则必须将其替换为字符行。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。