请问c#如何发送指令让打印机退纸呢,我想打5张后就退一下纸,现在打印机就是不自动退纸。

2025-01-19 03:41:22
推荐回答(3个)
回答1:

 /// 
        /// ESC/P 指令
        /// 

        /// 0:退纸命令 1:进纸命令 2:换行命令
        public void PrintESC(int iSelect)
        {
            string send;

            iHandle = CreateFile(prnPort, GENERIC_READ | GENERIC_WRITE, 0, 0, OPEN_EXISTING, 0, 0);

            if (iHandle.ToInt32() == -1)
            {
                MessageBox.Show("没有连接打印机或者打印机端口不是LPT1!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                fs = new FileStream(iHandle, FileAccess.ReadWrite);
            }

            byte[] buf = new byte[80];

            switch (iSelect)
            {
                case 0:
                    send = "" + (char)(27) + (char)(64) + (char)(27) + 'j' + (char)(255);    //退纸1 255 为半张纸长
                    send = send + (char)(27) + 'j' + (char)(125);    //退纸2
                    break;
                case 1:
                    send = "" + (char)(27) + (char)(64) + (char)(27) + 'J' + (char)(255);    //进纸
                    break;
                default:
                    send = "" + (char)(27) + (char)(64) + (char)(12);   //换行
                    break;
            }

 http://blog.csdn.net/pfworld/article/details/2084666

回答2:

你说得好有道理,我竟无言以对o(╯□╰)o

回答3:

什么叫退一下纸?