QrCode生成二维码

引用类库Gma.QrCodeNet.EnCodeing

主要代码:

CreateQrCode类

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4
 5 namespace _2DCodeCA
 6 {
 7     using System.IO;
 8     using Gma.QrCodeNet.Encoding;
 9     using Gma.QrCodeNet.Encoding.Windows.Render;
10     using System.Drawing.Imaging;
11     using System.Drawing;
12     using System.Drawing.Drawing2D;
13     public class CreateQrCode
14     {
15         public Image Create(string text)
16         {
17             QrCode code;
18             QrEncoder encoder = new QrEncoder(ErrorCorrectionLevel.H);
19             Image img = null;
20             if (encoder.TryEncode(text, out code))
21             {
22                 var render = new GraphicsRenderer(new FixedModuleSize(5, QuietZoneModules.Two));
23                 using (MemoryStream ms = new MemoryStream())
24                 {
25                     render.WriteToStream(code.Matrix, ImageFormat.Png, ms);
26                     img = Image.FromStream(ms);
27                 }
28             }
29             return img;
30         }
31
32         public Image ReviceImage(Image img, int nWidth, int nHeight)
33         {
34             Image b = new Bitmap(nWidth, nHeight);
35             using (Graphics graphics = Graphics.FromImage(b))
36             {
37
38                 graphics.InterpolationMode = InterpolationMode.HighQualityBicubic;
39                 graphics.DrawImage(img, new Rectangle(0, 0, nWidth, nHeight), new Rectangle(0, 0, img.Width, img.Height), GraphicsUnit.Pixel);
40             }
41             return img;
42         }
43
44         public Image Create(string text, string logoPath)
45         {
46             Image imgLogo = Image.FromFile(logoPath);
47             Image img=Create(text);
48             if (imgLogo.Width != 65 || imgLogo.Height != 65)
49             {
50                 imgLogo = ReviceImage(imgLogo, 65, 65);
51             }
52             Graphics graphics = Graphics.FromImage(img);
53             graphics.DrawImage(imgLogo, img.Width / 2 - imgLogo.Width / 2, img.Width / 2 - imgLogo.Width / 2, imgLogo.Width, imgLogo.Height);
54             return img;
55         }
56     }
57 }

界面代码:

 1 private void btnCreate_Click(object sender, EventArgs e)
 2         {
 3             string str = "姓名:" + txtName.Text + "\n号码:" + txtPhone.Text + "\n性别:" + txtSex.Text;
 4             CreateQrCode create=new CreateQrCode();
 5             if (string.IsNullOrWhiteSpace(txtPath.Text))
 6             {
 7                 img2DCode.Image = create.Create(str);
 8             }
 9             else
10             {
11                 img2DCode.Image = create.Create(str, txtPath.Text);
12             }
13
14         }
15
16         private void btnPath_Click(object sender, EventArgs e)
17         {
18             OpenFileDialog open = new OpenFileDialog();
19             open.ShowDialog();
20             txtPath.Text = open.FileName;
21         }

效果图:

文章引用:http://www.tuicool.com/articles/f6ruei

类库下载:http://www.qrcode-generator.com/

时间: 2024-10-13 19:50:25

QrCode生成二维码的相关文章

Pyqt+QRcode 生成二维码

python生成二维码是件很简单的事,使用第三方库Python QRCode就可生成二维码,我用Pyqt给QRcode打个壳 一.python-qrcode介绍 python-qrcode是个用来生成二维码图片的第三方模块,依赖于 PIL 模块和 qrcode 库. PIL下载地址: https://pypi.python.org/pypi/PIL/1.1.6         或 http://www.pythonware.com/products/pil/ qrcode下载地址: https:

asp.net(C#)利用QRCode生成二维码(续)-在二维码图片中心加Logo或图像 .

<%@ WebHandler Language="C#" Class="GetQRCode" %> using System; using System.Web; using ThoughtWorks.QRCode.Codec; using ThoughtWorks.QRCode.Codec.Data; using ThoughtWorks.QRCode.Codec.Util; using System.IO; using System.Text; us

C# 利用QRCode生成二维码图片

引用LYBwwp的博文http://blog.csdn.net/lybwwp/article/details/18444369 网上生成二维码的组件是真多,可是真正好用的,并且生成速度很快的没几个,QRCode就是我在众多中找到的,它的生成速度快.但是网上关于它的使用说明,真的太少了,大都是千篇一律的复制粘贴.这是本要用它做了一个项目后,简单的整理了一下. 组件下载地址:http://download.csdn.net/detail/lybwwp/6861821 下载文件包包含ThoughtWo

Qrcode生成二维码的参数总结 及最小尺寸的测试

Qrcode生成二维码,做过很多实验,探索最小规格的二维码到底是多少尺寸,和最高规格的二维码到底是多大尺寸.现在我总结总结: 有两种思路: 1.生成规格高的二维码,然后压缩到自己想要的尺寸的二维码.这种:压缩算法不好的时候会很坑爹. 2.根据调整的参数生成原图,这种图是比较清晰的,打印出来都可以很好的被识别. 先说说第二种吧:根据测试, 1.不设置任何东西时:根据测试 最小的二维码尺寸是45--47:宽高(对于1---14个字符), 第二梯度:54-56:宽高(对于15--26字符) 第三梯度:

python_使用qrcode生成二维码

1.功能 使用qrcode生成二维码 2.代码 #生成二维码: import qrcode #根据url生成二维码 def qrcodeWithUrl(url): img = qrcode.make(url) savePath = "1.png" img.save(savePath) #根据输入的文字生成二维码 def qrcodeWithText(text): img = qrcode.make(text) savePath = "2.png" img.save(

使用jquery.qrcode生成二维码实现微信分享功能

前言: 最近有个这样的需求,在pc端的商品详情页增加分享功能. 微博分享.QQ好友分享.QQ空间分享这些都很常见.但是微信分享我还没有手动写过(以前改过). 最终效果如下图: 解决方案:使用jquery.qrcode插件生成二维码 jquery.qrcode cdn地址 参见: https://www.bootcdn.cn/jquery.qrcode/ 1.加载 jQuery 和 jquery.qrcode.js: <script src="https://cdn.bootcss.com/

C# winform通过ThoughtWorks.QRCode生成二维码解码可以添加logo

首先要下载ThoughtWorks.QRCode.dll文件,添加引用. ThoughtWorks.QRCode.dll下载,点击下载 界面如下: 代码: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Win

ThoughtWorks.QRCode生成二维码

首先引用需要的dll,此处使用的是ThoughtWorks.QRCode.dll,网上可以找到对应的,此处也有一份,点击下载 http://files.cnblogs.com/files/ives/ThoughtWorks.QRCode.zip 接下来添加引用,不明白的网上文章很多. 关键代码如下 Bitmap bt; string enCodeString = "http://sheyouyun.com"; QRCodeEncoder qrCodeEncoder = new QRCo

使用QRCode生成二维码

官网网址:http://code.ciaoca.com/javascript/qrcode/ 简介: QRCode.js是一个专门用于生成二维码的javascript库,主要是通过获取 DOM 的标签,再通过H5Canvas绘制而成,不依赖任何库(包括jquery),在官网上有对其详细的介绍,建议参考官网! 使用: 使用的时候分两种情况,一种是简单使用方式,生成二维码的大小包括其他一些东西由其默认,另一种是自定义各个参数 基本使用: New QRCode(document.getElemetBy

qrcode生成二维码插件

今天我要和大家分享的是利用qrcode来生成二维码. 首先要使用qrcode就需要引用文件,我这边用的是1.7.2版本的jquery加上qrcode <script type="text/javascript" src="jquery-1.7.2.min.js"></script><script type="text/javascript" src="jquery.qrcode.min.js"&g