在Windows IoT上生成和识别二维码
在Windows IoT生成和识别二维码,实际上由于是UWP上实现,所以,理论上,这些生成和识别二维码的方法也可以在其它平台上运行。
关于二维码的生成有很多库可以实现,比如QRCoder,这个库可以在NuGet中搜索到和引入。
使用方法:
/// <summary>
/// 生成二维码
/// </summary>
/// <param name="text">二维码代表的字符串</param>
/// <returns></returns>
public async Task<BitmapImage> GenerateQrCode(string text)
{
var img = new BitmapImage(); var qrGenerator = new QRCodeGenerator();
var qrData = qrGenerator.CreateQrCode(text, QRCodeGenerator.ECCLevel.M);
var qrCode = new BitmapByteQRCode(qrData);
var qrImage = qrCode.GetGraphic();
using (var stream = new InMemoryRandomAccessStream())
{
using (var writer = new DataWriter(stream.GetOutputStreamAt()))
{
writer.WriteBytes(qrImage);
await writer.StoreAsync();
}
await img.SetSourceAsync(stream);
}
return img;
}
关于识别二维码,使用QRCoder库似乎无法实现,可以使用ZXing.uwp这个库实现,实际上,这个ZXing.uwp库可以识别和生成二维码和条形码。
使用方法:
/// <summary>
/// 识别二维码
/// </summary>
/// <param name="imgFile">二维码图片文件</param>
/// <returns>二维码代表的图片</returns>
public async Task<string> ReadQrCode(StorageFile imgFile)
{
WriteableBitmap img = await OpenWritableBitmapFile(imgFile); BarcodeReader reader = new BarcodeReader();
reader.Options.CharacterSet = "UTF-8";
Result result = reader.Decode(img);
return result == null ? string.Empty : result.Text;
} private async Task<WriteableBitmap> OpenWritableBitmapFile(StorageFile imgFile)
{
using (IRandomAccessStream stream = await imgFile.OpenAsync(FileAccessMode.Read))
{
BitmapDecoder decoder = await BitmapDecoder.CreateAsync(stream);
WriteableBitmap img = new WriteableBitmap((int)decoder.PixelWidth, (int)decoder.PixelHeight);
img.SetSource(stream);
return img;
}
}
在Windows IoT上生成和识别二维码的更多相关文章
- python实现树莓派生成并识别二维码
python实现树莓派生成并识别二维码 参考来源:http://blog.csdn.net/Burgess_Liu/article/details/40397803 设备及环境 树莓派2代 官方系统R ...
- 使用ZXing.Net生成与识别二维码(QR Code)
Google ZXing是目前一个常用的基于Java实现的多种格式的1D/2D条码图像处理库,出于其开源的特性其现在已有多平台版本.比如今天要用到的ZXing.Net就是针对微软.Net平台的版本.使 ...
- Python3+qrcode+zxing生成和识别二维码教程
一.安装依赖库 pip install qrcode pillow image zxing pillow是python3中PIL的代替库,image是生成图版需要用到的库 安装image时报错“Cou ...
- C#生成和识别二维码
用到外部一个DLL文件(ThoughtWorks.QRCode.dll),看效果 生成截图 识别截图 生成二维码后右键菜单可以保存二维码图片,然后可以到识别模式下进行识别,当然生成后可以用手机扫描识别 ...
- PHP 生成、识别二维码及安装相关扩展/工具
2018-02-20 00:30:26 更新:推荐新扩展(极力推荐) 这篇文章里用的两个二维码扩展都有些问题和麻烦:phpqrcode(生成二维码)的源码有点小 bug: 而 php-zbarcod ...
- 利用ZXing.Net生成和识别二维码
ZXing.Net:ZXing是一个开放源码的,用Java实现的多种格式的1D/2D条码图像处理库. github:https://github.com/micjahn/ZXing.Net 直接将字符 ...
- ZXing 生成、读取二维码(带logo)
前言 ZXing,一个支持在图像中解码和生成条形码(如二维码.PDF 417.EAN.UPC.Aztec.Data Matrix.Codabar)的库.ZXing(“zebra crossing”)是 ...
- winform 扫码识别二维码
因为公司业务需求,需要在Windows系统下调用摄像头识别二维码需求,就有了这个功能. 我根据网上网友提供的一些资料,自己整合应用到项目中,效果还不错(就是感觉像素不是太好) 现在将调用摄像头+识别二 ...
- day111:MoFang:邀请好友流程&生成邀请好友二维码&第三方应用识别二维码&本地编译测试&记录邀请人信息
目录 1.邀请业务逻辑流程图 2.邀请好友-前端 3.邀请好友-后端接口(生成二维码) 4.前端获取后端生成的二维码 5.前端长按页面,保存图片到相册 6.客户端通过第三方识别微信二维码,服务端提供对 ...
随机推荐
- Javascript中eval解析的json的几种用法
eval解析json字符串可用的三种方式都可以实现... <!DOCTYPE html> <html> <head> <meta charset=" ...
- shell自动化下载、安装、配置nginx
#!/bin/bash auto config nginx server #by author www.jfedu.net #2018年5月14日17:25:52 N_PAR="vim lr ...
- tolua#是Unity静态绑定lua的一个解决方案
tolua#代码简要分析 2017-04-16 23:02 by 风恋残雪, 98 阅读, 1 评论, 收藏, 编辑 简介 tolua#是Unity静态绑定lua的一个解决方案,它通过C#提供的反射信 ...
- 机器审核图片学习(1)pornDetector
a) https://github.com/bakwc/PornDetector 封装了两个库,opencv与scikit-learn 另外一种法师封装了opencv与tensorflow
- python 强制类型转换 以及 try expect
强制类型转换: 字符串 --> 整型: 字符串 第一个 是 + 或者 - ,会直接去掉 符号 ,返回 数字 如: a = '+123456' s = int(a) print(s) s ...
- WPF 3D Transparency Depth-Order Sorting
原文:WPF 3D Transparency Depth-Order Sorting Just a quick post here - When making WPF 3D apps, trans ...
- Mac版Visual Studio预览版
来了,Mac版Visual Studio预览版开放下载 投递人 itwriter 发布于 2016-11-17 12:11 评论(7) 有1317人阅读 原文链接 [收藏] « » 微软前俩天宣布,推 ...
- windows下Redis 主从读写分离部署
原文:windows下Redis 主从读写分离部署 1.可直接下载window下的运行文件(下面这个链接) 也可以浏览github 查看相应的版本说明文档 https://github.com/Ser ...
- windows消息值全部定义,从消息值得到消息名称(系统消息定义从0到1023,从1024开始就是WM_USER,但是中间有325个WM_undefined消息,估计是备用,另外各控件都有一些reserved消息,也是为了备用)LostSpeed
前言 在逆向算法扫描插件时, 遇到一个windows消息值在msdn中没有定义. 去查资料, 有个老外将全部windows消息值和消息名称定义都码好了:) 写个测试程序, 封装了一个接口, 从消息值得 ...
- matlab figure 调整大小、字体、线宽
用 matlab 画了一张图,投稿时要缩小,缩小后字体就会过小或者发虚. 解决办法: % figure resize set(gcf,'Position',[100 100 260 220]); se ...