加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

WPF 创建二维码

发布时间:2020-12-15 17:52:32 所属栏目:百科 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 1.在http://zxingnet.codeplex.com/站点上下载ZXing .Net的第三方库 2.新建一个WPF工程 3.引入zxing.dll 4.添加引用空间 using ZXing.Common; using Z

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

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

2.新建一个WPF工程

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控件中显示生成的二维码,用手机扫描,可以得到二维码的内容“牛逼”。

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读