zoukankan      html  css  js  c++  java
  • ZXing条码图像配合Zebra打印

    利用ZXing生成条码图像的主要代码段

    using ZXing;
    using ZXing.Common;
    
    private void button1_Click(object sender, EventArgs e)
            {           
                string SN = textBox1.Text;
                if (string.IsNullOrEmpty(SN))
                {
                    return;
                }
                BarcodeWriter writer = new BarcodeWriter()
                {
                    Format = BarcodeFormat.DATA_MATRIX,
                    Options =new EncodingOptions {
                        Width = 70,
                        Height = 70,
                        Margin = 2
                    }
                };
    
                Bitmap QRcode = writer.Write(SN);
    
                Bitmap bitmap = new Bitmap(360, 80);           
                Graphics g = Graphics.FromImage(bitmap);
    
                Font font = new Font("Arial", 18);
                SolidBrush brush = new SolidBrush(Color.White);
                StringFormat format = new StringFormat();
    
                g.DrawString(SN.Substring(0,17), font, brush, new Point(0, 0), format);
                g.DrawString(SN.Substring(17, 13), font, brush, new Point(0, 24), format);
                g.DrawString(SN.Substring(30), font, brush, new Point(0, 48), format);
                g.DrawImage(QRcode, new Point(280, 0));
    
                font.Dispose();
                brush.Dispose();
                format.Dispose();
    
                pictureBox1.Image = bitmap;
    
                string data = ZebraUnity.BitmapToHex(bitmap, out int to, out int row);
                g.Dispose();
    
                string zpl = string.Format("~DGR:Temp0.GRF,{0},{1},{2}", to, row, data);
                StringBuilder cmd = new StringBuilder();
                cmd.Append(zpl);
    
                cmd.Append("^XA^LH100,30");
                cmd.Append(string.Format("^FO{0},{1}",top.Value,left.Value));
                cmd.Append("^XGR:Temp0.GRF,1,1^FS");
                cmd.Append(string.Format("^PQ{0}",numericUpDown1.Value));
                cmd.Append("^XZ");
                string cmdstr = cmd.ToString();
                ZPLHelper.PrintData(cmdstr);
            }
  • 相关阅读:
    人机博弈,吃子棋游戏(一)基本介绍
    cesm下载备注
    mysql数据库批量高速插入
    持续学习
    顺序表的功能实现
    Broccoli & Babel使用演示样例
    rk3188调试记录
    Operation not allowed on a unidirectional dataset错误?
    dbExpress操作中用TDBGrid显示数据
    dbexpress连接mysql提示Operation not allowed on a unidirectional dataset
  • 原文地址:https://www.cnblogs.com/lakeliu/p/11969085.html
Copyright © 2011-2022 走看看