• 大小: 43KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-16
  • 语言: C#
  • 标签: ZPL指令  

资源简介

做项目涉及到打印的,前面用了水晶报表来做。结果客户说打印速度太慢,达不到要求,客户要求在1秒之内一个标签。结果就研究用ZPL指令直接发送到打印机。这速度就提高了。因为绕过了生成报表,打印池。

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.IO;
using System.Net;
using System.Net.Sockets;

namespace ZPLPrinter
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender EventArgs e)
        {
            foreach (string pkInstalledPrinters in System.Drawing.Printing.PrinterSettings.InstalledPrinters)
            {
                cmbInstalledPrinters.Items.Add(pkInstalledPrinters);
            }
            if (cmbInstalledPrinters.Items.Contains(“ZDesigner GK888t (EPL)“))
            {
                cmbInstalledPrinters.Text = “ZDesigner GK888t (EPL)“;
            }
        }

        private void btnPrintZPL_Click(object sender EventArgs e)
        {
            //string str = “漕宝路二店“;
            //this.richTextBox1.Text=ConvertHex(str);
            if (!string.IsNullOrEmpty(cmbInstalledPrinters.Text))
            {
                // Send a printer-specific to the printer.
                RawPrinterHelper.SendStringToPrinter(cmbInstalledPrinters.Text this.richTextBox2.Text);
            }
        }
        private string ConvertHex(string str)
        {
            string strReturn = ““;
            foreach (short tx in str.ToCharArray())
            {
                strReturn += tx.ToString(“X4“);
            }
            return strReturn;
        }
        /// 
        /// 打印
        /// 

        /// 
        /// 
        private void btnPrint_Click(object sender EventArgs e)
        {
            if (!string.IsNullOrEmpty(cmbInstalledPrinters.Text))
            {
                // Send a printer-specific to the printer.
//                richTextBox1.Text = Encoding.GetEncoding(“GB2312“).GetBytes(GetPrintData());
                richTextBox1.Text = GetPrintData();
                RawPrinterHelper.SendStringToPrinter(cmbInstalledPrinters.Text richTextBox1.Text);
            }
            //IPEndPoint iep = new IPEndPoint(IPAddress.Parse(“192.9.200.22“) 9100);
            //Socket sk = new Socket(AddressFamily.InterNetwork SocketType.Stream ProtocolType.Tcp);
            //sk.Connect(iep);
            //byte[] message = Encoding.GetEncoding(“GB2312“).GetBytes(GetPrintData());
            //sk.Send(message);
            //sk.Close();            
        }
        /// 
        /// 生成标签指令
        /// 

        /// 
        private string GetPrintData()
        {
            StringBuilder strBuilder = new StringBuilder();
            strBuilder.AppendLine(“^XA“);               //指令开始
            strBuilder.AppendLine(“^PR12“);             //打印速度
            strBuilder.AppendLine(“^FOX50^ADN3620^FD1

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2012-10-24 15:34  ZPLPrinter\
     目录           0  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\
     文件        4748  2012-10-25 16:28  ZPLPrinter\ZPLPrinter\Form1.Designer.cs
     文件        4388  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\Form1.cs
     文件        5814  2012-10-25 16:28  ZPLPrinter\ZPLPrinter\Form1.resx
     文件         480  2011-11-11 11:07  ZPLPrinter\ZPLPrinter\Program.cs
     目录           0  2012-10-24 15:34  ZPLPrinter\ZPLPrinter\Properties\
     文件        1268  2011-11-11 11:07  ZPLPrinter\ZPLPrinter\Properties\AssemblyInfo.cs
     文件        2849  2011-11-11 11:07  ZPLPrinter\ZPLPrinter\Properties\Resources.Designer.cs
     文件        5612  2011-11-11 11:07  ZPLPrinter\ZPLPrinter\Properties\Resources.resx
     文件        1095  2011-11-11 11:07  ZPLPrinter\ZPLPrinter\Properties\Settings.Designer.cs
     文件         249  2011-11-11 11:07  ZPLPrinter\ZPLPrinter\Properties\Settings.settings
     文件        7035  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\RawPrinterHelper.cs
     文件        3274  2011-11-11 11:13  ZPLPrinter\ZPLPrinter\ZPLPrinter.csproj
     目录           0  2011-11-11 11:07  ZPLPrinter\ZPLPrinter\bin\
     目录           0  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\bin\Debug\
     文件       24576  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\bin\Debug\ZPLPrinter.exe
     文件       26112  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\bin\Debug\ZPLPrinter.pdb
     文件        5632  2011-11-11 11:07  ZPLPrinter\ZPLPrinter\bin\Debug\ZPLPrinter.vshost.exe
     目录           0  2012-10-24 15:34  ZPLPrinter\ZPLPrinter\obj\
     目录           0  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\obj\Debug\
     目录           0  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\obj\Debug\TempPE\
     文件         180  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\obj\Debug\ZPLPrinter.Form1.resources
     文件         180  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\obj\Debug\ZPLPrinter.Properties.Resources.resources
     文件         842  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\obj\Debug\ZPLPrinter.csproj.GenerateResource.Cache
     文件       24576  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\obj\Debug\ZPLPrinter.exe
     文件       26112  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\obj\Debug\ZPLPrinter.pdb
     文件        1490  2012-11-02 15:24  ZPLPrinter\ZPLPrinter\obj\ZPLPrinter.csproj.FileListAbsolute.txt
     文件         919  2011-11-11 11:07  ZPLPrinter\ZPLPrinter.sln
     文件       16896  2012-11-02 15:24  ZPLPrinter\ZPLPrinter.suo

评论

共有 条评论

相关资源