文档章节

C#MVC生成二维码

o
 osc_y8yehimr
发布于 2019/03/20 20:07
字数 934
阅读 0
收藏 0

精选30+云产品,助力企业轻松上云!>>>

   首先大家看我的上一个文章写得是WinFrom 实现条形码生成读取

这次我来呈现出MVC B/S 页面实现 一维码,二维码

 

1.3 第三方类库:ZXing.Net

 

1.3.1 说明

 

ZXing 是一个可生成和读取 1D/2D(1维/2维) 条形码的开源类库。原先是Java版本,后由第三方衍生了支持QT、C++、.Net等版本。

 

.Net版本支持的平台:.Net 2.0, 3.5 and 4.0、Silverlight 4 and 5、Windows Phone 7.0, 7.1 and 8.0、Windows CE、Unity3D、Xamarin.Android 等等。

 

 在项目引用中的引用ZXing

 

 

进行联网下载

 

 

 

 

需要的引用

 

 

 

 

 

首先视图创建

一维码生成:

 

如有看不懂下面下载源代码

 

前台代码:

 

<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="qqq()" name="name11" value="一维码生成" />@*一维码生成按钮*@
<input type="button" onclick="www()" name="name12" value="二维码生成" />@*二维码生成按钮*@
</p>
<script>
function qqq() {
var name1 = $("#text1").val();//获取文本框的值
$.ajax({//进行Ajax 提交到控制器 (下面有控制器方法的图片)
url: '/Default/yi?name=' + name1,//路径传参
type: 'post',
success: function (rese) {//收到返回的一维码图片地址
$("#imge1").remove();//清空盒子中图片
$("#img1").append("<img id='images' src=" + rese + " />");//在盒子中最加二维码图片显示
}
})

}

后台方法:

 

public string yi(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";//返回生成一维码图片的路径
}

效果图片:

 

 

简单介绍 由前台Ajax提交到以上控制器方法中 执行生成一维码并保存到image文件夹中

命名为当前时间的字符串格式再提交给前台 之后进行显示一维码

 

 

二维码生成:

 

如有看不懂下面下载源代码

 

前台代码:如上同样的代码格式

<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="qqq()" name="name11" value="一维码生成" />@*一维码生成按钮*@
<input type="button" onclick="www()" name="name12" value="二维码生成" />@*二维码生成按钮*@
</p>
<script>
function qqq() {
var name1 = $("#text1").val();//获取文本框的值
$.ajax({//进行Ajax 提交到控制器 (下面有控制器方法的图片)
url: '/Default/yi?name=' + name1,//路径传参
type: 'post',
success: function (rese) {//收到返回的一维码图片地址
$("#imge1").remove();//清空盒子中图片
$("#img1").append("<img id='images' src=" + rese + " />");//在盒子中最加二维码图片显示
}
})

}
function www() {
var name2 = $("#text1").val();
$.ajax({
url: '/Default/er?name=' + name2,
type: 'post',

success: function (rese) {
$("#imge1").remove();
$("#img1").append("<img id='images' src=" + rese + " />");
}
})
}
</script>

后台方法:

注释如上图一维码注释一样

 

public string er(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";
}

 效果图片:

 

如还有不懂请下载源代码

百度网盘:https://pan.baidu.com/s/1HFyW2ZiBa98fHyt9qAOZqw

 提取码::dl47

 

o
粉丝 0
博文 500
码字总数 0
作品 0
私信 提问
加载中
请先登录后再评论。
C#MVC用ZXing.Net生成二维码/条形码

开篇:zxing.net是.net平台下编解条形码和二维码的工具。 首先创建新项目 选择MVC模板 添加一个控制器 在项目引用中的引用ZXing 进行联网下载 控制器需要引用 后台控制器 public string Tiao...

osc_27sxxx5r
01/07
2
0
使用PHP生成二维码的二种方法(带logo图像)

分享下如何使用PHP生成二维码,以及如何生成中间带LOGO图像的二维码 一、利用Google API生成二维码 Google提供了较为完善的二维码生成接口,调用API接口很简单,以下是调用代码: 二、使用P...

mysoftsky
2014/07/14
240
0
frogchou/FiwanQRCode

#FiwanQRCode ####飞网QR二维码生成器,用户可以通过这个工具生成QR码。面向开发人员,和经常接触使用各种二维码的人,这个工具能帮助开发二维码的人员生成各种格式二维码,包括png,jpg,b...

frogchou
2017/04/26
0
0
怎样生成彩色二维码

怎样生成彩色二维码 目前,不论企业还是个人网站,甚至连媒介平台都贴出了自己的二维码,一来可以迎合市场需求,二来可以获取众人眼球。正因二维码需求的不断扩张,市面上二维码生成器种类也...

二维码爱好者
2013/08/28
424
0
【Python】秀儿!两行代码制作你的专属动态二维码

全文干货,建议收藏以后使用哟! 目录 普通二维码 带图片的艺术二维码 动态二维码 函数常用参数表 今天跟大家分享一个Python两行代码展现骚操作的小项目,生成自己专属的精美二维码,包括普通...

刚小猿
05/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

图解ARP协议(二)ARP***原理与实践

一、ARP***概述 在上篇文章里,我给大家普及了ARP协议的基本原理,包括ARP请求应答、数据包结构以及协议分层标准,今天我们继续讨论大家最感兴趣的话题:ARP***原理是什么?通过ARP***可以做...

osc_91g5cdgs
6分钟前
0
0
shell进度条实现

#!/bin/bashb=''i=0while [ $i -le  100 ]do    printf "progress:[%-50s]%d%%\r" $b $i    sleep 0.1    i=`expr 2 + $i`            b=#$b......

osc_npw5uz1o
7分钟前
8
0
通过ssh实现登录服务器脚本

版本v1 #!/bin/bash########################author: Bovin########################show all host infos of serverList.txtif [[ -f $HOME/.serverList.txt ]]then  hos......

osc_lt2jwwhb
9分钟前
0
0
VMware Fusion下Centos联网

1.VMware Fusion设置选择“网络适配器” 2.“连接我的网络适配器”选择“与我的mac共享” 3.编辑centos的ip配置文件 [root@Centos ~]# more /etc/sysconfig/network-scripts/ifcfg-eth0D...

osc_pg5rp78i
10分钟前
0
0
Kickstart配置文件参数详解

kickstart是什么? KickStart是一种无人值守的安装方法。它的工作原理时在安装过程中记录典型的需要人工干预填写的各种参数,并生成一个名为ks.cfg的文件。如果在安装过程中(不只局限于生成K...

osc_r9yyhhqz
10分钟前
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部