• C#生成Bar Code Image


    public class Barcode : IHttpHandler
        {
            private object _code = "";
            private int _height = 52;
            private string code = "";
            public void ProcessRequest(HttpContext context)
            {
                if (context.Request.QueryString["code"] != null)
                {
                    _code = context.Request.QueryString["code"].ToString();
                    _code = "*" + _code + "*";
                }
                code = bar_code(_code);
                int p_w = code.Length;
       //int p_h = _height + 20;
       int p_h = _height;
                context.Response.ContentType = "image/gif";
                Bitmap myBitmap = new Bitmap(p_w, p_h);
                Graphics myGrap = Graphics.FromImage(myBitmap);
                myGrap.Clear(Color.White);
                for (int i = 0; i < p_w; i++)
                {
                    Pen myPen = new Pen(Color.White, 1);
                    if (code.Substring(i, 1) == "|")
                    {
                        myPen.Color = Color.Black;
                    }
                    myGrap.DrawLine(myPen, i, 0, i, _height);
                }
       //myGrap.DrawString(_code.ToString(), new Font("Courier New", 10), new SolidBrush(Color.Black), -4, _height);
                myBitmap.Save(context.Response.OutputStream, ImageFormat.Gif);
                context.Response.End();
            }
            public string bar_code(object str)
            {
                string strTmp = str.ToString();
                string code = strTmp;
                strTmp = strTmp.ToLower();
                strTmp = strTmp.Replace("0", "_|_|__||_||_|");
                strTmp = strTmp.Replace("1", "_||_|__|_|_||");
                strTmp = strTmp.Replace("2", "_|_||__|_|_||");
                strTmp = strTmp.Replace("3", "_||_||__|_|_|");
                strTmp = strTmp.Replace("4", "_|_|__||_|_||");
                strTmp = strTmp.Replace("5", "_||_|__||_|_|");
                strTmp = strTmp.Replace("7", "_|_|__|_||_||");
                strTmp = strTmp.Replace("6", "_|_||__||_|_|");
                strTmp = strTmp.Replace("8", "_||_|__|_||_|");
                strTmp = strTmp.Replace("9", "_|_||__|_||_|");
                strTmp = strTmp.Replace("a", "_||_|_|__|_||");
                strTmp = strTmp.Replace("b", "_|_||_|__|_||");
                strTmp = strTmp.Replace("c", "_||_||_|__|_|");
                strTmp = strTmp.Replace("d", "_|_|_||__|_||");
                strTmp = strTmp.Replace("e", "_||_|_||__|_|");
                strTmp = strTmp.Replace("f", "_|_||_||__|_|");
                strTmp = strTmp.Replace("g", "_|_|_|__||_||");
                strTmp = strTmp.Replace("h", "_||_|_|__||_|");
                strTmp = strTmp.Replace("i", "_|_||_|__||_|");
                strTmp = strTmp.Replace("j", "_|_|_||__||_|");
                strTmp = strTmp.Replace("k", "_||_|_|_|__||");
                strTmp = strTmp.Replace("l", "_|_||_|_|__||");
                strTmp = strTmp.Replace("m", "_||_||_|_|__|");
                strTmp = strTmp.Replace("n", "_|_|_||_|__||");
                strTmp = strTmp.Replace("o", "_||_|_||_|__|");
                strTmp = strTmp.Replace("p", "_|_||_||_|__|");
                strTmp = strTmp.Replace("r", "_||_|_|_||__|");
                strTmp = strTmp.Replace("q", "_|_|_|_||__||");
                strTmp = strTmp.Replace("s", "_|_||_|_||__|");
                strTmp = strTmp.Replace("t", "_|_|_||_||__|");
                strTmp = strTmp.Replace("u", "_||__|_|_|_||");
                strTmp = strTmp.Replace("v", "_|__||_|_|_||");
                strTmp = strTmp.Replace("w", "_||__||_|_|_|");
                strTmp = strTmp.Replace("x", "_|__|_||_|_||");
                strTmp = strTmp.Replace("y", "_||__|_||_|_|");
                strTmp = strTmp.Replace("z", "_|__||_||_|_|");
                strTmp = strTmp.Replace("-", "_|__|_|_||_||");
                strTmp = strTmp.Replace("*", "_|__|_||_||_|");
                strTmp = strTmp.Replace("/", "_|__|__|_|__|");
                strTmp = strTmp.Replace("%", "_|_|__|__|__|");
                strTmp = strTmp.Replace("+", "_|__|_|__|__|");
                strTmp = strTmp.Replace(".", "_||__|_|_||_|");
                return strTmp;
            }
            public bool IsReusable
            {
                get
                {
                    return false;
                }
            }
        }
  • 相关阅读:
    【BIRT】报表数据导出为PDF显示不全
    【BIRT】报表显示不全
    【BIRT】02_开发一张简单的报表
    【BIRT】01_在win10上安装BIRT
    【漫画解读银行业务】
    【FinancialKnowledge】拨备
    虚拟机“锁定文件失败”、“打不开磁盘”或者“它所依赖的某个快照磁盘”的解决办法
    【DB2】DbVisualizer编译存储过程
    【DB2】If 'db2' is not a typo you can run the following command to lookup the package that contains the binary: command-not-found db2 bash: db2: command not found
    【Linux】配置JAVA_HOME环境变量
  • 原文地址:https://www.cnblogs.com/gaohao/p/6651983.html
Copyright © 2020-2023  润新知