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新建一个窗体程序项目: ...
随机推荐
- 混合了RBAC和ACL的权限系统(二) -- 基于RBAC的系统权限
http://fightplane.iteye.com/blog/1278464 1. 概念说明 A 系统级权限:从角色的角度出发,不特定于任何实际的资源的权限.比如“用户是否可以修改标题”这个权限, ...
- vjudge B - Design T-Shirt
B - Design T-Shirt 思路:水题,模拟即可. #include<cstdio> #include<cstring> #include<iostream&g ...
- 一次源码编译PHP折腾记
前言LINUX环境下编译安装是很折腾人的一件事情,如果没有C/C++功底,碰到编译器报错,肯定要抓狂了 :):),有些软件需要依赖其它库,必须先把依赖库安装好才能进行软件安装.当你学会了编译安装神技之 ...
- HDU 5293
树上DP题. 其实有点类似于01的问题.方程很容易想到.首先,因为一条链的节点其实都是在树上的,所以很容易想到应该先求一个LCA.然后,当某节点不是链的LCA时,它的转移就是: dp[i]=sum[i ...
- ZOJ1041 Transmitters
Transmitters Time Limit: 2 Seconds Memory Limit: 65536 KB In a wireless network with multiple t ...
- test框架搭建
http://blog.csdn.net/huilan_same https://github.com/huilansame/Test_framework
- 最全Linux 与 Linux Windows 文件共享
前提说明: windows主机信息:192.168.1.100 帐号:abc password:123 共享目录:share linux主机信息:192.168.1.200 帐号:def passwo ...
- Java系列之JNDI
简单介绍 JNDI(Java Naming and Directory Interface,Java命名和文件夹接口)是SUN公司提供的一种标准的Java命名系统接口.JNDI提供统一的cli ...
- 小白学开发(iOS)OC_ 字符串写入文件(2015-08-13)
// // main.m // 字符串写入文件 // // Created by admin on 15/8/13. // Copyright (c) 2015年 admin. All rig ...
- Extjs grid 某列点击弹窗
{ header : "单号", tooltip : '单号', dataIndex : 'transportCode', width : 130, sortable : true ...