当前位置: 移动技术网 > IT编程>开发语言>c# > C#MVC用ZXing.Net生成二维码/条形码

C#MVC用ZXing.Net生成二维码/条形码

2020年01月10日  | 移动技术网IT编程  | 我要评论

 开篇: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,右击运行

 

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

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网