Qt QPixmap, QByteArray, QString互相轉換


 1   QString filename = QDir::homePath() + "/Desktop/TOF.png";
 2   QImage* img = new QImage;
 3   if(!(img->load(filename))) //加載圖像
 4   {
 5     QMessageBox::information(this, tr("打開圖像失敗"), tr("打開圖像失敗!"));
 6         delete img;
 7         return;
 8   }
 9   //QPixmap->QByteArray
10   QPixmap pixmap = QPixmap::fromImage(*img);
11   QByteArray byteArray = QByteArray();
12   QBuffer buffer(&byteArray);
13   buffer.open(QIODevice::WriteOnly);
14   pixmap.save(&buffer,"png",0);
15   //QByteArray->QString
16   QString str2 = QString(byteArray.toBase64());
17   printf("%s", str2.toStdString()); 
18   //QString->QByteArray
19   QByteArray byteArray = QByteArray::fromBase64(str2.toLocal8Bit();
20   //QByteArray->QPixmap
21   QPixmap pix; 
22   pix.loadFromData(byteArray, "png");

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM