admin管理员组文章数量:1337690
Windows环境编译和使用qrencode
Libqrencode是一个快速而紧凑的库,用于编码QR Code符号中的数据,QR Code符号是一种2D符号,可以由手持终端(如带有CCD的手机)扫描。二维码的容量最高可达7000位或4000个字符,具有很强的鲁棒性。
Libqrencode接受字符串或数据块列表,然后将QR Code符号编码为位图数组。当其他QR Code应用程序生成图像文件时,使用libqrencode允许应用程序直接从原始位图数据呈现QR Code符号。此库还包含一个命令行实用程序,用于输出各种格式的二维码图像。
本文将介绍在Windows环境编译和使用qrencode。
一、cmake编译qrencode源码
下载libqrencode源码
下载地址:https://fukuchi/works/qrencode/
解压源码并建立build文件夹
编译静态库(.lib)
1、打开cmake-gui
2、选择源码目录
3、选择build目录
4、Configure
首次Configure会提示错误:
点击OK后,取消勾选WITH_TOOLS,不进行tools编译
重新Configure
5、Generate
cmake编译完成后,在build目录下生成Visual Studio的工程文件
6、双击QRencode.sln,打开VS工程
7、Release编译
在”解决方案任务管理器“选择ALL_BUILD生成
编译完成后在build\Release目录下可以找到生成的lib库
编译动态库(.dll)
编译动态库的流程和编译动态库时一样,只是在cmake Configure的时候勾选BUILD_SHARED_LIBS选项,最终就可以生成dll了。
最终生成的动态库:
二、使用Visual Studio调用libqrencode生成二维码
新建一个VS控制台新项目qrtest
建立项目后建立demo.cpp作为主程序文件,拷贝qrencode.h到工程目录,配置依赖qrencode.lib。
代码
#include "qrencode.h"
typedef unsigned short WORD;
typedef unsigned long DWORD;
typedef signed long LONG;
#define BI_RGB 0L
#pragma pack(push, 2)
typedef struct
{
WORD bfType;
DWORD bfSize;
WORD bfReserved1;
WORD bfReserved2;
DWORD bfOffBits;
} BITMAPFILEHEADER;
typedef struct
{
DWORD biSize;
LONG biWidth;
LONG biHeight;
WORD biPlanes;
版权声明:本文标题:Windows环境编译和使用qrencode 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/biancheng/1740424735a2274662.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论