首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将ESC控件发送到Microsoft.PointOfService仿真程序

如何将ESC控件发送到Microsoft.PointOfService仿真程序
EN

Stack Overflow用户
提问于 2016-04-21 15:25:00
回答 1查看 421关注 0票数 0

以下是Micrsoft.PointOfService打印机的ESC码:

代码语言:javascript
复制
  string escAlignCenter = String.Format("{0}|cA", ((char)27));
  string escAlignRight = String.Format("{0}|rA", ((char)27));
  string escBoldOn = String.Format("{0}|bC", ((char)27));
  string escNewLine = String.Format("{0}|1lF", ((char)27));
  string escPaperCut = String.Format("{0}{1}|P", ((char)27), AppSettings.POSPrinterLinesToCut);
  string escReset = String.Format("{0}|N", ((char)27));
  string escUnderlineOn = String.Format("{0}|uC", ((char)27));

这段代码

代码语言:javascript
复制
simulatedReceipt.AppendLine(string.Format("{0}{1}Header will appear Here{2}",  escBoldOn, escAlignCenter, escReset));

当发送到模拟器打印机时

代码语言:javascript
复制
 textToPrint = simulatedReceipt.ToString();
 posPrinter.PrintNormal(PrinterStation.Receipt, textToPrint);

结果如下:

代码语言:javascript
复制
  System.FormatException occurred
  HResult=-2146233033
  Message=Input string was not in a correct format.
  Source=mscorlib
  StackTrace:
       at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
       at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
 at Microsoft.PointOfService.DeviceSimulators.PosPrinterSimulatorWindow.ProcessEscapes(String str)
       at Microsoft.PointOfService.DeviceSimulators.PosPrinterSimulatorWindow.DisplayText(String str)
       at Microsoft.PointOfService.DeviceSimulators.PosPrinterSimulator.PrintNormalImpl(PrinterStation station, PrinterState printerState, String data)
       at Microsoft.PointOfService.BaseServiceObjects.PosPrinterBase.OutputRequestHandler(OutputRequest Request)
       at Microsoft.PointOfService.Internal.PosCommonInternal.ProcessOutputRequest(OutputRequest request, Boolean asyncOperation)
       at MyCourts.PrintReceiptManager.printToPOSPrinter() in e:\MyCourts\MyCourts\Managers\PrintReceiptManager.cs:line 558
  InnerException: 

不幸的是,我没有合适的收据打印机来测试它,但我怀疑只有内置的热敏打印机模拟器才会出现错误。

有人能证实我的怀疑吗。

EN

回答 1

Stack Overflow用户

发布于 2016-05-08 08:36:17

检查SDK示例后,很明显,在发送到模拟器之前删除了控制代码,因此模拟器似乎不会模拟粗体等。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36762566

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档