当前位置: 首页 > news >正文

全网网站建设推广网站营销最大的特点

全网网站建设推广,网站营销最大的特点,高质量的丹阳网站建设,步步高网站建设报告目录 1.QRencode简介 2.编译qrencode 3.在Qt中直接使用QRencode源码 3.1.添加源码 3.2.用字符串生成二维码 3.3.用二进制数据生成二维码 3.4.界面设计 3.5.效果展示 4.注意事项 5.源码下载 1.QRencode简介 QRencode是一个开源的库#xff0c;专门用于生成二维码专门用于生成二维码QR Code。它支持多种编程语言的接口包括C、C、Python等。QR码是一种矩阵式二维码常用于存储网址、联系信息、文字信息等广泛应用于各种场景如产品追踪、广告宣传、文档管理等。 QRencode的设计简洁高效提供了易于使用的API接口使得开发者能够轻松地在应用程序中集成QR码生成和处理功能。 它的官网libqrencode 特性与优势 输出格式库支持生成多种格式的输出包括PNG图片、SVG矢量图、ASCII文本形式的二维码等这取决于库的具体实现和使用的接口。C接口对于Cqrencode提供了丰富的类和方法来方便地生成二维码。用户可以创建一个QRcode对象向其中添加数据然后将其渲染成所需的格式。跨平台qrencode库是跨平台的可以在多种操作系统上编译和使用包括Windows、Linux、macOS等。生成能力qrencode库能够生成不同版本和纠错级别的QR码支持从最小的版本121x21的模块到最高的版本40177x177的模块并且可以根据需要调整纠错等级L、M、Q、H。C接口对于C语言使用者qrencode也提供了函数接口通过这些函数可以直接操作二维码数据结构进行编码和输出。依赖在某些情况下如生成PNG图片输出时qrencode可能需要额外的依赖如libpng和zlib库。 2.编译qrencode 下载源代码 将qrencode-4.1.1解压后创建一个build文件夹 打开Cmake将qrencode-4.1.1文件夹下的CMakeLists.txt文件拖入CMake中 点击【Configure】 这里我选择了MSVC2017-64编译器点击【Finish】 6.如下图所示进行配置配置不正确会由于没有准备依赖而报错 设置编译后的安装路径为C:/Users/MHF/Downloads/qrencode-4.1.1/QRencode勾选WITHOUT_PNG表示不支持png取消勾选WITH_TOOLS否则会报错。 7.然后点击【Generate】、【Open Project】打开VS 8.鼠标右键选择【ALL_BUILD】点击【生成】然后选择【INSTALL】点击【生成】 9.就可以在安装路径下生成编译好的文件了 在QT中引入编译为静态库的QRencode 创建一个工程将编译后的QRencode文件夹复制到工程中 在工程的pro文件中添加下列代码 CONFIG(debug, debug|release): { LIBS -L$$PWD/QRencode/lib/ -lqrencoded }else{ LIBS -L$$PWD/QRencode/lib/ -lqrencode } INCLUDEPATH $$PWD/QRencode/include DEPENDPATH $$PWD/QRencode/include 3.在Qt中直接使用QRencode源码 3.1.添加源码 将qrencode-4.1.1文件夹中除了.h、.c、config.h.in外的文件删除文件夹也删除qrenc.c也删除 将config.h.in重命名为config.h 在pro文件中添加所有.h 、.c文件 注意还需要添加DEFINES HAVE_CONFIG_H 编译后会报错error: C2065: “MAJOR_VERSION”: 未声明的标识符 打开config.h文件如下图所示 将MAJOR_VERSION、MICRO_VERSION、MINOR_VERSION、VERSION四项修改为如下所示与自己下载的版本号相同 然后就可以正常编译了 3.2.用字符串生成二维码 使用 QRcode_encodeString 或其他相关函数来生成二维码数据。这个函数会返回一个 QRcode 结构体其中包含了二维码的像素数据。将 QRcode 结构体中的数据转换为图像格式以便在屏幕上显示或打印出来。通常你会遍历二维码的每个像素并根据像素值0 或 1来设置图像的对应像素为黑色或白色。 void QRCodeDemo::setCodeString(const QString strCodeString) {m_strCodeString strCodeString; }void QRCodeDemo::paintEvent(QPaintEvent *event) {QRcode *qrcode;qrcode QRcode_encodeString(m_strCodeString.toStdString().c_str(), 2, QR_ECLEVEL_Q, QR_MODE_8, 1);if (nullptr qrcode){return QWidget::paintEvent(event);}qint32 temp_width ui.label-width();qint32 temp_height ui.label-height();qint32 qrcode_width qrcode-width 0 ? qrcode-width : 1;double scale_x (double)temp_width / (double)qrcode_width;double scale_y (double)temp_height / (double)qrcode_width;//QImage mainimg QImage(temp_width, temp_height, QImage::Format_ARGB32);m_qrcodeImage QImage(temp_width, temp_height, QImage::Format_ARGB32);QPainter painter(m_qrcodeImage);QColor background(Qt::white);painter.setBrush(background);painter.setPen(Qt::NoPen);painter.drawRect(0, 0, temp_width, temp_height);QColor foreground(QColor(#002266)); // 二维码颜色painter.setBrush(foreground);qDebug()qrcode_widthqrcode_width;for (qint32 y 0; y qrcode_width; y){for (qint32 x 0; x qrcode_width; x){unsigned char b qrcode-data[y*qrcode_width x];if (b 0x01){QRectF r(x*scale_x, y*scale_y, scale_x, scale_y);painter.drawRects(r, 1);}}}ui.label-setPixmap(QPixmap::fromImage(m_qrcodeImage));return QWidget::paintEvent(event); }void QRCodeDemo::on_pushButton_clicked() {setCodeString(ui.lineEdit-text()); } 保存二维码图片 void QRCodeDemo::on_pushButton_2_clicked() {QString path(./12334434556.jpg);m_qrcodeImage.save(path); } 3.3.用二进制数据生成二维码 调用 QRcode_encodeData 可以把图片或其它二进制类型的数据转换为二维码使用起来比较简单在这里就不多距离了。 3.4.界面设计 通过Qt Designer设计程序界面包括 一个输入框用于接收用户输入的内容。 一个按钮用户点击后触发二维码生成。 一个显示区域用于实时展示生成的二维码。 一个按钮用户点击后保存二维码这个按钮是动态生成的。 3.5.效果展示 程序运行效果如下图所示 点击保存按钮会在当前运行目录下生成相应的二维码图片 4.注意事项 二维码无法识别可能是由于二维码生成时参数设置不当如版本过低、容错率过低等或二维码图像质量不佳如模糊、破损等导致的。解决方案是调整参数或提高图像质量。库依赖问题在编译或运行QRencode时可能会遇到库依赖问题。解决方案是确保系统中已安装所有必要的库文件并使用包管理器进行管理和更新。 错误处理在实际应用中你应该添加更多的错误处理代码比如检查QRcode_encodeString的返回值是否为NULL以及处理任何可能的异常或错误情况。 5.源码下载 所有代码都是在QT5.12.12版本基础上编译的。 您可以通过以下链接下载本项目的源码 通过网盘分享的文件CreateQrcode_new.zip 链接: https://pan.baidu.com/s/1czmd-o_0Rcp06xDvJzKcVw?pwdben7 提取码: ben7 参考 1.二维码的原理竟如此简单第一次有人说的这么明白
http://www.laogonggong.com/news/118263.html

相关文章:

  • 信誉好的扬中网站建设文化传媒有限公司网站建设
  • 做招聘的网站有哪些买域名建网站
  • cadisen卡迪森手表网站wordpress分类名插件
  • 西安建设公司网站wordpress怎么安装?
  • 网站seo 工具为什么要建微网站
  • 西安维护网站世界杯网站源码下载
  • 欧美风网站建设江苏省建设工程地方标准网站
  • 宁波外贸网站推广wordpress 下划线
  • 网站上做网页怎么改图片域名备案 个人 网站基本信息查询
  • 中国铁道建设协会网站什么是跨境电商怎么做
  • wordpress博客建站教程贵州网站制作品牌公司
  • 天猫官方网站首页中山网站建设备案
  • 网站建设哪里最好接单子郑州市建设投资集团公司网站
  • 招聘网站开发设计呼和浩特城乡建设网站
  • 西安建设工程交易网站动态型网站建设哪里便宜
  • 设计感强的网站wordpress开启评论验证码
  • 中国建设部官方网站资格证查询wordpress 加描述 2017
  • 池州网站优化公司手机精品网站建设
  • 品牌设计网站flash网站特点
  • 网站建设 经验wordpress好玩的插件
  • WordPress英文网站wordpress 侧边栏 修改字体大小
  • 专注网站平台推广公司那个网站可以做微课
  • 网络运维工程师面试常见问题苏州首页关键词优化
  • c 创建一个网站怎么做中国建设信号工证网站
  • 广州安全教育平台软件seo搜索排名影响因素主要有
  • 专业做二手网站有哪些百万综合文字论文网址的内容
  • 做购物网站的引言画网页
  • 网站建设运营的灵魂是淘宝这种网站怎么做的?
  • wordpress转移整站个人网站制作模板图片
  • 网站开发行业分析建设部网站法律法规