如何发送页面切割命令到爱普生打印机

本文关键字:命令 爱普生 打印机 何发送 | 更新日期: 2023-09-27 18:08:31

我正试图通过向打印机(带USB端口的爱普生TM U220)发送剪纸命令来实用地剪纸。我使用了通用/纯文本驱动程序和爱普生打印机端口的打印机,这是我在安装后发现的爱普生高级打印机驱动程序。打印机命令代码是(GS V m),其中m = 0,1,48或49,我在设备手册上找到。我想知道如何通过StringWriter将这些命令发送到打印机。我使用通用/纯文本打印机,因为它比使用爱普生驱动程序快得多。

我是c#窗口的新手,请任何人提供我一些代码行来实现这一点。我已经上网好几天了,仍然没有找到答案。我想我需要发送打印机命令作为字节,但我不知道怎么做:(

如何发送页面切割命令到爱普生打印机

非常感谢你,Hans。现在我可以使用微软的RawPrinterHelper类发送剪纸命令。六天来我一直在寻找这个解决办法。这是我所做的。
string GS = Convert.ToString((char)29);
string ESC = Convert.ToString((char)27);
string COMMAND = "";
COMMAND = ESC + "@";
COMMAND += GS + "V" + (char)1;
PrintDialog pd = new PrintDialog();
pd.PrinterSettings = new PrinterSettings();
if (DialogResult.OK == pd.ShowDialog(this))
{
RawPrinterHelper.SendStringToPrinter(pd.PrinterSettings.PrinterName,  COMMAND);
}

对于那些使用netcat打印的人(不需要安装任何驱动程序就可以轻松打印东西),要裁纸:

echo -e "'x1B@'x1DV1" | nc printer.ip 9100

与c#版本相同的字符串,但映射为十六进制:'x1B = ESC'x1D = GS

s = Replace(s, "<KESME>", Chr(27) + Chr(105), 1) ' Termal Printer

Chr() +chr()