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

时间:2023-01-30 19:53:30

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

首先创建新项目

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

择MVC模板

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

 添加一个控制器

 在项目引用中的引用ZXing

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

进行联网下载

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

控制器需要引用

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

后台控制器

 

public string TiaoXing(string name)
{
//设置条形码规格
EncodingOptions encoding = new EncodingOptions();
encoding.Height = ;//设置宽高
encoding.Width = ;
//生成条形码的图片并保存
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 = ;
qr.Width = ;
qr.Margin = ;//设置二维码图片周围空白边距
//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,右击运行

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