C#--条形码和二维码的简单实现
首先 简单的介绍一下条形码和二维码
条形码:
用MVC实现条形码和二维码
接下来呢,要介绍的是 借助 zxing.dll 实现二维码和条形码
首先我是用MVC来实现功能的
在视图里写以下代码
第一、先写出 条形码和二维码中我们要出现的内容
第二、写下功能按钮,定义onclick事件
分别是条形码和二维码的功能
第三 、显示条形码和二维码
以下有图解
<body>
<div>
//输入文字
<input id="txt" type="text" />
//功能按钮
<input id="Button1" type="button" value="生成条形码图片" onclick="tiao()" /> @*条形码按钮*@
17 <input id="Button1" type="button" value="生成二维码图片" onclick="Er()" /> @*二维码按钮*@
//图片显示
18 <img src="" alt="" id="tx" />
19 <img src="" alt="" id="erwei" />
</div>
</body>
</html>
之后就是我们用ajax调用onclick事件到控制器了
<script>
//二维码方法跳转
function Er() {
$.ajax({
url: "/Show/Er",
data: { text: $("#txt").val() },
dataType: "text",
success: function (data) {
$("#erwei").attr("src", data);
}
})
}
//条形码方法跳转
function tiao() {
$.ajax({
url: "/Show/Tiao",
data: { text: $("#txt").val() },
dataType: "text",
success: function (data) {
$("#tx").attr("src", data);
}
})
}
</script>
上面是视图里面的简单代码
下面介绍一下控制器里面具体功能的实现
我是用 zxing.dll 实现的功能
二维码和条形码的生成需要引用
zxing.dll 文件
文件下载位置
https://files.cnblogs.com/files/jian1125/zxing.zip
话不多说直接上代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Drawing;
using System.Drawing.Imaging;
using System.Text;
using ZXing; //引用zxing.dll文件之后
using ZXing.Common;
using ZXing.QrCode;
using ZXing.QrCode.Internal; namespace Ex8.Controllers
{
public class ShowController : Controller
{
// GET: Show
public ActionResult Index()
{
return View();
}
public string Er(string text)
{
int width = ; int height = ; //定义变量 二维码的宽和高
Random rd = new Random(); //随机数
string time = DateTime.Now.ToString("yyyyMMdd")+"erwei";
string path = Server.MapPath("~/Images" + "//" + time + ".Png"); //二维码图
string path1 = $"http://localhost:53183/Images/{time}" + ".Png";
BarcodeWriter writer = new BarcodeWriter();
writer.Format = BarcodeFormat.QR_CODE;
QrCodeEncodingOptions options = new QrCodeEncodingOptions()
{
DisableECI = true, //设置内容编码
CharacterSet = "UTF-8",
//设置二维码的宽度和高度
Width = width,
Height = height,
Margin = //设置二维码的边距,单位不是固定像素
}; writer.Options = options;
Bitmap map = writer.Write(text);
map.Save(path, ImageFormat.Png);
return path1;
}
public string Tiao(string text)
{
int width = ; int height = ;
Random rd = new Random();
string time = DateTime.Now.ToString("yyyyMMdd")+rd.Next().ToString();
string path = Server.MapPath("~/Images" + "//" + time + ".Png");
string path1 = $"http://localhost:53183/Images/{time}" + ".Png";
BarcodeWriter writer = new BarcodeWriter();
//使用ITF 格式,不能被现在常用的支付宝、微信扫出来
//如果想生成可识别的可以使用 CODE_128 格式
//writer.Format = BarcodeFormat.ITF;
writer.Format = BarcodeFormat.CODE_39;
EncodingOptions options = new EncodingOptions()
{
Width = width,
Height = height,
Margin =
};
writer.Options = options;
Bitmap map = writer.Write(text);
map.Save(path, ImageFormat.Png);
return path1;
} }
}
以上的功能呢,我们是借助zxing.dll实现的功能
我能帮大家的就这么多了
C#--条形码和二维码的简单实现的更多相关文章
- [转]用C#实现的条形码和二维码编码解码器
条形码的标准: 条形码的标准有ENA条形码.UPC条形码.二五条形码.交叉二五条形码.库德巴条形码.三九条形码和128条形码等,而商品上最常使用的就是EAN商品条形码.EAN商品条形码亦称通用商品条形 ...
- asp.net 生成、解析条形码和二维码
原文 asp.net 生成.解析条形码和二维码 一.条形码 一维码,俗称条形码,广泛的用于电子工业等行业.比如我们常见的书籍背面就会有条形码,通过扫描枪等设备扫描就可以获得书籍的ISBN(Intern ...
- Android之条形码、二维码扫描框架(非原创)
文章大纲 一.条形码.二维码扫描框架介绍二.条形码.二维码的区别和组成结构介绍三.条形码.二维码扫描框架应用场景四.BGAQRCode-Android框架实战五.项目源码下载六.参考文章 一.条形码. ...
- (整理).net实现条形码与二维码
本文由来源网络的知识点组合而成,感谢分享的作者,文章结尾处给出查询资料连接. 条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符.常见的条形码是 ...
- 实例源码--ZXing识别条形码和二维码识别源码
下载源码 技术要点: 1.ZXing库的 使用 2.识别条形码和二 维码 3.自定义视图 4.源码带有非常详 细的中文注释 ...... 详细介绍: 1.ZXing库 ZXing是个很经典的条码/ ...
- 用C#实现的条形码和二维码编码解码器
本文主要介绍可以在C#中使用的1D/2D编码解码器.条形码的应用已经非常普遍,几乎所有超市里面的商品上面都印有条形码:二维码也开始应用到很多场合,如火车票有二维码识别.网易的首页有二维码图标,用户只需 ...
- 基于opencv3.0和下的条形码与二维码识别
其中对条码与二维码的识别分为以下4个步骤 1. 利用opencv和Zbar(或者Zxing)对标准的条形码图片(即没有多余背景干扰,且图片没有倾斜)进行解码,将解码信息显示出来,并与原始信息对比. 2 ...
- C# 利用ZXing.Net来生成条形码和二维码
本文是利用ZXing.Net在WinForm中生成条形码,二维码的小例子,仅供学习分享使用,如有不足之处,还请指正. 什么是ZXing.Net? ZXing是一个开放源码的,用Java实现的多种格式的 ...
- C#利用Zxing.net生成条形码和二维码并实现打印的功能
开篇:zxing.net是.net平台下编解条形码和二维码的工具. 下载地址:http://pan.baidu.com/s/1kTr3Vuf Step1:使用VS2010新建一个窗体程序项目: ...
随机推荐
- 华为USG6350防洪墙SNMP最简单功能配置
https://www.cnblogs.com/vincent-liang/p/7785089.html
- Spring MVC-表单(Form)标签-文件上传(File Upload)示例(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_upload.htm 说明:示例基于Spring MVC 4.1.6. 以下示例显 ...
- spring历史背景
1.2004年spring出现第一版本spring frameworl1.0 2.写代码永远是最简单的,后续的运维工作才是让人感到无助的 3.spring boot在运维方面做了很多工作,部署,监控, ...
- canvas学习相关的一点东西
<!DOCTYPE html> <html> <head> <style> canvas { border: 1px dashed black; } & ...
- [Mini Program] 尺寸单位 rpx
So each phone's width is 750rpx. And according to the device ratio (width:height), we can calucalate ...
- Fiddler手机抓包工具设置过滤域名
需求:我想用fiddler抓包只抓test.sis.1course.cn; pre.schoolis.cn; sistest02.schoolis.cn;这几个域名下的请求 设置步骤:https:// ...
- CodeForces - 735D Taxes (哥德巴赫猜想)
Taxes time limit per test 2 seconds memory limit per test 256 megabytes input standard input output ...
- HDU 5692 Snacks(DFS序+线段树)
Snacks Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Sub ...
- 第2章 安装Nodejs Nodejs基础 课程介绍
因为你做任何Nodejs应用,底层无非都是通过调用这些既有的开放的接口,来完成相应的功能.这个要注意,不同版本的Nodejs,接口不一定相同.甚至是相同的接口,使用规范也有区别.我们以这个版本来过这些 ...
- Sudoku(dfs)
http://poj.org/problem?id=2676 填九宫格 思路:将每一行,每一列及每一个3*3块中出现的数字标记上,将可填的空的位置记录下来,枚举1-9,填入合适的数. #include ...