开发者

How to send page cut command to Epson printer

开发者 https://www.devze.com 2023-04-05 00:51 出处:网络
I\'m trying to cut the paper pragmatically by sending paper cut command to the printer (Epson TM U220 with USB port).

I'm trying to cut the paper pragmatically by sending paper cut command to the printer (Epson TM U220 with USB port). I used the printer with Generic/Text Only Driver and Epson printer port which I found after installing Epson advanced printer driver. Printer command code is (GS V m), where m = 0,1,48 or 49 which I found on the device manual. I would like to know how to send these command to printer by StringWriter. I use Generic/Text Only pri开发者_运维知识库nter because it's much faster than using Epson driver.

I'm really new to C# windows and please anyone kindly provide me some lines of code to achieve this. I've been surfing the web for several days and still not found the answer yet. I think I need to send printer command as byte but I don't know how to do :(


Thank you very much Hans. Now I can send Paper cut command by using Microsoft RawPrinterHelper class. I've been seeking this solution for six days. Here is what I've done.

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);
}


For those printing with netcat (really easy way to print something without installing any driver), to cut the paper:

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

Same string like in the c# version, but mapped to hex: \x1B = ESC and \x1D = GS.


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


Chr() +chr() 
0

精彩评论

暂无评论...
验证码 换一张
取 消