作为主题,我有一台 POS 打印机 MatrixPoint MP-3250。正如手册所说,它是支持命令:ESC/POS 兼容
我确实搜索谷歌,尝试但不会工作。至少设置精简字体、粗体、斜体和剪纸命令。
运行规格:
- 视窗 7 32 位
- 打印机接口是Parallel插槽,我使用BAFO并口转USB适配器。
- 安装 BAFO 的驱动程序后,我们得到: USB001 - USB 虚拟打印机端口
- 我在“设备和打印机”中手动添加打印机(添加本地打印机,设置为 USB001 端口并使用通用/纯文本打印机驱动程序。
- 我使用 winspool API (WritePrinter) 发送命令
- 德尔福 XE
请帮助我,任何意见将不胜感激。
我尝试使用此ESC/POS 手册。
编辑。
方法如下:
function WriteToPrinter(const Data: string): DWord;
var Temp: AnsiString;
begin
// write directly to printer device
{ ----
Note:
This method is also able to send Escape command sequences directly,
so you're no longer need to call Win32 API complicated Escape() function.
}
// We need convert to raw string since I'm using Delphi XE
// string = UnicodeString
Temp := AnsiString(Data);
Result := 0;
if (fPrnStatus = rpsPageStarted) then
WritePrinter(fPrnHandle, PAnsiString(Temp), Length(Temp), Result);
end;
WriteToPrinter(#27'@'); // init printer
WriteToPrinter(#27'S'); // normal mode?
WriteToPrinter('Printing to default printer.'); // data
WriteToPrinter('GSV0'); // Cut the paper
我们在打印纸上得到了什么: OWOTOFTPrinting to default printer(出现奇怪的字符)
纸张未能裁切(未发生)
编辑:大部分都忘记了,上述内容在 Epson 兼容/IBM 9068A 存折打印机(点阵)上运行良好。(不确定)打印机直接连接到 USB / 并行端口,而不是使用适配器(像现在一样与 USB 并行)。
我认为此适配器或其驱动程序中/之间有问题?
谢谢