日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

Qt生成二維碼需要第三方庫(kù)qrencode。

  1、編譯好的qrencode庫(kù)獲取:

    鏈接:
https://pan.baidu.com/s/1rss-9LlDVmJ-mfNmK_dELQ

    提取碼:h8lc

  2、Qt配置qrencode

    (1)右擊Qt工程文件,出現(xiàn)菜單,選擇【添加庫(kù)】->【外部庫(kù)】來添加qrencode庫(kù)。

    (2)把qrencode.h頭文件添加到工程中,然后包含頭文件 #include "qrencode.h"

  3、代碼生成二維碼

  /**
   * @brief GernerateQRCode
   * 生成二維碼函數(shù)
   * @param text  二維碼內(nèi)容
   * @param qrPixmap  二維碼像素圖
   * @param scale 二維碼縮放比例
   */
  void GernerateQRCode(const QString &text, QPixmap &qrPixmap, int scale)
  {
     if(text.isEmpty())
     {
         return;
     }
 
     //二維碼數(shù)據(jù)
     QRcode *qrCode = nullptr;
 
     //這里二維碼版本傳入?yún)?shù)是2,實(shí)際上二維碼生成后,它的版本是根據(jù)二維碼內(nèi)容來決定的
     qrCode = QRcode_encodeString(text.toStdString().c_str(), 2,
                                  QR_ECLEVEL_Q, QR_MODE_8, 1);
 
     if(nullptr == qrCode)
     {
         return;
     }
 
     int qrCode_Width = qrCode->width > 0 ? qrCode->width : 1;
     int width = scale * qrCode_Width;
     int height = scale * qrCode_Width;
 
     QImage image(width, height, QImage::Format_ARGB32_Premultiplied);
 
     QPainter painter(&image);
     QColor background(Qt::white);
     painter.setBrush(background);
     painter.setPen(Qt::NoPen);
     painter.drawRect(0, 0, width, height);
     QColor foreground(Qt::black);
     painter.setBrush(foreground);
     for(int y = 0; y < qrCode_Width; ++y)
     {
         for(int x = 0; x < qrCode_Width; ++x)
         {
             unsigned char character = qrCode->data[y * qrCode_Width + x];
             if(character & 0x01)
             {
                QRect rect(x * scale, y * scale, scale, scale);
                painter.drawRects(&rect, 1);
             }
         }
     }
 
     qrPixmap = QPixmap::fromImage(image);
     QRcode_free(qrCode);
}
  void slot_GenerateQRCode()
  {
      QPixmap qrPixmap;
      int width = ui->label_ShowQRCode->width();
      int height = ui->label_ShowQRCode->height();
      GernerateQRCode(ui->textEdit_Text->toPlainText(), qrPixmap, 2);
      qrPixmap = qrPixmap.scaled(QSize(width, height),
                                 Qt::IgnoreAspectRatio, Qt::SmoothTransformation);
      ui->label_ShowQRCode->setPixmap(qrPixmap);
 }

  4、結(jié)果

 

分享到:
標(biāo)簽:二維碼
用戶無頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定