天天看點

Qt :圖檔與QByteArray互轉

1 将圖檔轉為QByteArray傳輸    

QBuffer buffer;       
buffer.open(QIODevice::ReadWrite);//pixmap不能為空,必須先将圖檔加載到pixmap中        
pixmap.save(&buffer,"jpg");        
QByteArray pixArray;        
pixArray.append(buffer.data());      

2 将QByteArray轉為圖檔顯示      

QByteArray array;       
while(client->waitForReadyRead(100))
{          
  array.append((QByteArray)client->readAll());       
}       
QBuffer buffer(&array);       
buffer.open(QIODevice::ReadOnly);       
QImageReader reader(&buffer,"JPG");       
QImage img = reader.read();      
 if(!img.isNull()){          
  QPixmap pix = QPixmap::fromImage(img);          
   ui->showImageLabel->setPixmap(pix.scaled(ui->showImageLabel->size(),Qt::KeepAspectRatio,Qt::SmoothTransformation));  
}      

繼續閱讀