zoukankan      html  css  js  c++  java
  • C#MVC用ZXing.Net生成二维码/条形码

     开篇:zxing.net是.net平台下编解条形码和二维码的工具。

    首先创建新项目

     

    MVC模板

     

     添加一个控制器

     在项目引用中的引用ZXing

     

    进行联网下载

    控制器需要引用

     

    后台控制器

     

    public string TiaoXing(string name)
            {
                //设置条形码规格
                EncodingOptions encoding = new EncodingOptions();
                encoding.Height = 120;//设置宽高
                encoding.Width = 200;
                //生成条形码的图片并保存
                BarcodeWriter wr = new BarcodeWriter();
                wr.Options = encoding;//进行指定规格
                wr.Format = BarcodeFormat.EAN_13;//条形码的规格 EAN13规格
                Bitmap img = wr.Write(name);//生成图片
                string filepath = Server.MapPath("/image/");//获取文件夹的绝对路径
             string qq=   DateTime.Now.ToString("yyyyMMddHHmmss");//获取当前时间的字符串格式
                img.Save(filepath+qq+".jpg", System.Drawing.Imaging.ImageFormat.Jpeg);//进行图片保存
                return "/image/"+qq+".jpg";//返回生成一维码图片的路径
            }
            public string ErWei(string name)
            {
                //1先设置二维码的规格
                QrCodeEncodingOptions qr = new QrCodeEncodingOptions();
                qr.CharacterSet = "UTF-8";//设置编码格式,否则会乱码
                qr.Height = 200;
                qr.Width = 200;
                qr.Margin = 1;//设置二维码图片周围空白边距
                //2生成条形码图片保存
                BarcodeWriter wr = new BarcodeWriter();
                wr.Format = BarcodeFormat.QR_CODE;//二维码
                wr.Options = qr;//指定格式
                Bitmap bitmap = wr.Write(name);//存放二维码
                //设置图片的路径
                //进行保存
                string filepath = Server.MapPath("/image/");
                string qq = DateTime.Now.ToString("yyyyMMddHHmmss");
                bitmap.Save(filepath+qq+".jpg",ImageFormat.Jpeg);
                return "/image/" + qq + ".jpg";
            }

    前台视图

     

    @{
        Layout = null;
    }
    <script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
    <script src="~/Scripts/jquery-3.3.1.js"></script>
    <!DOCTYPE html>
    <html>
    <head>
        <meta name="viewport" content="width=device-width" />
        <title>Index</title>
    </head>
    <body>
        <div id="img1">
            @*实现图片的盒子*@
    
        </div>
        <p>
            显示文本<input type="text" id="text1" name="name1" value="" /> @*文本框*@
            <input type="button" onclick="yyy()" name="name11" value="一维码生成" />@*一维码生成按钮*@
            <input type="button" onclick="eee()" name="name12" value="二维码生成" />@*二维码生成按钮*@
        </p>
        <script>
            function yyy() {
                var name1 = $("#text1").val();//获取文本框的值
                $.ajax({//进行Ajax 提交到控制器 (下面有控制器方法的图片)
                    url: '/Default/TiaoXing?name=' + name1,//路径传参
                    type: 'post',
                    success: function (rese) {//收到返回的一维码图片地址
                        $("#imge1").remove();//清空盒子中图片
                        $("#img1").append("<img id='images' src=" + rese + " />");//在盒子中最加二维码图片显示
                    }
                })
    
            }
            function eee() {
                var name2 = $("#text1").val();
                $.ajax({
                    url: '/Default/ErWei?name=' + name2,
                    type: 'post',
    
                    success: function (rese) {
                        $("#imge1").remove();
                        $("#img1").append("<img id='images' src=" + rese + " />");
                    }
                })
            }
        </script>
    </body>
    </html>

    OK,右击运行

    总结:如有不足,请各位提出。

  • 相关阅读:
    论语言思维的差异
    lua经典问题
    跳槽的故事
    未来一年计划
    腾讯面试题 找重复的数
    nodejs学习
    node记录
    mysql 常用总结
    ubuntu 服务器搭建汇总
    ubuntu下安装golang
  • 原文地址:https://www.cnblogs.com/jnm121/p/12161116.html
Copyright © 2011-2022 走看看