1.在http://zxingnet.codeplex.com/网站上下载ZXing .Net的第三方库

2.新建一个WPFproject

3.引入zxing.dll

4.加入引用空间

using ZXing.Common;

using ZXing;

using ZXing.QrCode;

5.加入引用System.Drawing

6.加入引用空间

using System.Drawing;

7.在xaml中加入一个Image控件,用于显示二维码。命名为image1.

8.编写生成二维码函数:

// 注销对象方法API

[DllImport("gdi32")]

static extern int DeleteObject(IntPtr o);

/* 创建二维码图片 */

private ImageSource createQRCode(String content, int width, int height)

{

EncodingOptions options;

//包括一些编码、大小等的设置

//BarcodeWriter :一个智能类来编码一些内容的条形码图像

BarcodeWriter write = null;

options = new QrCodeEncodingOptions

{

DisableECI = true,

CharacterSet = "UTF-8",

Width = width,

Height = height,

Margin = 0

};

write = new BarcodeWriter();

//设置条形码格式

write.Format = BarcodeFormat.QR_CODE;

//获取或设置选项容器的编码和渲染过程。

write.Options = options;

//对指定的内容进行编码,并返回该条码的呈现实例。渲染属性渲染实例使用,必须设置方法调用之前。

Bitmap bitmap = write.Write(content);

IntPtr ip = bitmap.GetHbitmap();//从GDI+ Bitmap创建GDI位图对象

//Imaging.CreateBitmapSourceFromHBitmap方法。基于所提供的非托管位图和调色板信息的指针,返回一个托管的BitmapSource

BitmapSource bitmapSource = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(ip, IntPtr.Zero, Int32Rect.Empty,

System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions());

DeleteObject(ip);

return bitmapSource;

}

9.在xaml中加入一个button,并为button加入click事件

10.在button的click事件中调用生成二维码的函数:

image1.Source = createQRCode("牛逼",250, 250);

11.执行程序。Image控件中显示生成的二维码,用手机扫描,能够得到二维码的内容“牛逼”。

WPF 创建二维码的更多相关文章

  1. ios创建二维码

    #import "LCTwoCodeImage.h" @implementation LCTwoCodeImage +(UIImage *) GotoCreatMyTwoCode ...

  2. iOS原生CIFilter创建二维码

    iOS原生CIFilter创建二维码 2016-05-31 未来C iOS原生CIFilter创建二维码 关于二维码生成,网上也是有很多,很早以前的第三方库大多数都是通过C++写,也是有的如zxing ...

  3. python 全栈开发,Day128(创建二维码,扫码,创建玩具的基本属性)

    昨日内容回顾 1.app播放音乐 plus.audio.createPlayer(文件路径/URL) player.play() 播放音乐 player.pause() 暂停播放 player.res ...

  4. pytho创建二维码简单版

    pytho创建二维码简单版 import qrcode aa = qrcode.make("https://github.com/phygerr/") aa.save('C:\Us ...

  5. Delphi Mercadopago支付【支持支持获取账户信息和余额、创建商店,商店查询、创建二维码、二维码查询、创建订单、订单查询、订单退款等功能】

    作者QQ:(648437169) 点击下载➨Delphi Mercadopago支付 [Delphi Mercadopago支付]支持 支持支持获取账户信息和余额.创建商店,商店查询.创建二维码.二维 ...

  6. C#_WPF中创建二维码、识别二维码

    第三方库: WPFMediaKit.dll (WPFMediaKit摄像头处理) zing.dll NuGet安装这两个第三方dll 项目截图预览: 项目代码: using System; using ...

  7. WPF生成二维码

    WPF可以通过ZXing.Net库来实现二维码的功能. 可以通过NuGet安装: Install-Package ZXing.Net 二维码的实现代码: #region 二维码的方法 /// < ...

  8. Unity中创建二维码

    在网络上发现了一个可以把字符串转换成二维码的dll,但是我们要怎么使用他呢.不废话,直接进入主题. 用到的引用 using UnityEngine;using ZXing;using ZXing.Qr ...

  9. 如何使用Java、Servlet创建二维码

    归功于智能手机,QR码逐渐成为主流,它们正变得越来越有用.从候车亭.产品包装.家装卖场.汽车到很多网站,都在自己的网页集成QR码,让人们快速找到它们.随着智能手机的用户量日益增长,二维码的使用正在呈指 ...

随机推荐

  1. C++ new delete(一)

    在C#.Java這種managed語言,因為有garbage collection,所以完全不用考慮free()或delete,但在C/C++,有時候要delete的,有時又不用,到底哪些改delet ...

  2. 分享点干货(此this非彼this)this的详细解读

    在javascript编程中,this关键字经常让初学者感到迷惑,这里,针对此this根据查阅的资料和个人的理解分享一下,纯手打,大神勿喷. 首先先说一下this的指向,大致可以分为以下四种. 1.作 ...

  3. p1036 选数(不详细勿看,递归)

    题目:传送门 这题,不会做,而且看了好久才看懂题解的,然后在题解的基础上补了一个 if(start>end) return 0 感觉这样对于我更直观 转载自:大神博客的传送门,点击进入 先声明, ...

  4. 记录xerces使用(VS2017 C++)

    1.编译xerces,获得dll文件和lib文件 2.将dll文件和lib文件拷贝到使用xerces的工程目录里面去 3.配置VS2017 C/C++  ->  All Options --&g ...

  5. webpack 之 plugin

    loader和plugins的区别是:前者处理单个文件,而后者作用于整个打包过程 内置插件:BannerPlugin 可以在打包后的文件上方添加备注信息,如版权说明等 // webpack.confi ...

  6. POJ 2631 Roads in the North (树的直径)

    题意: 给定一棵树, 求树的直径. 分析: 两种方法: 1.两次bfs, 第一次求出最远的点, 第二次求该点的最远距离就是直径. 2.同hdu2196的第一次dfs, 求出每个节点到子树的最长距离和次 ...

  7. python之tkinter变量设置 2014-4-9

    python 可以自己定义变量以及变量类型mystring = StringVar(ticked_yes = BooleanVoption1 = IntVar()volume = DoubleVar( ...

  8. php 面向对象 (类 对象)

    //面向对象//什么是面向对象//面向过程//什么是对象?//一切皆是对象//类//由对象抽象化//造类//class Ren//{ //构造方法 - - 写不写都存在//类的初始化方法 //构造方法 ...

  9. BGP表

    BGP是一种基于策略的路由选择协议,让AS能够根据多种BGP属性来控制数据流的传输.运行BGP的路由器交换被称为路径矢量或者属性的NLRI.路径矢量信息中包含一个BGP-AS号列表称为AS-PATH属 ...

  10. HDU 1358 next数组的推移

    题目大意: 输入n,再输入一个长度为n的字符串,从第二位开始,计算它的前缀(包括他自己)中出现过的重复字符串的个数,如aabaabaabaab的第6位的前缀aabaab,aab连续出现了两次,所以输出 ...