QT:图片与qbyteryarray互转

转载:程序猿的杂货店

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));

}

 

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容