QT学习(10) QPixmap和QImage的相互转换

版权声明:转载请注明出处 https://blog.csdn.net/happy_single/article/details/88429473

QPixmap转为Image:

void Widget::paintEvent(QPaintEvent *)
{
    QPainter p(this);
    QPixmap pixmap;
    pixmap.load("../Image/noya.jpg");
    QImage tempImage = pixmap.toImage();
    p.drawImage(0, 0, tempImage);
}

效果:

 

添加代码将QImage转为QPixmap:

void Widget::paintEvent(QPaintEvent *)
{
    QPainter p(this);
    QPixmap pixmap;
    pixmap.load("../Image/noya.jpg");
    QImage tempImage = pixmap.toImage();
    p.drawImage(0, 0, tempImage);

    QImage image;
    image.load("../Image/noya.jpg");
    QPixmap tempPixmap = QPixmap::fromImage(image);
    p.drawPixmap(300, 0, tempPixmap);
}

 效果如图:

 两张图片看不出有什么不一样的。

总结:

QPixmap:针对屏幕进行了优化,和平台相关,不能对图片进行修改。

QImage:和平台无关,可以对图片进行修改,在线程中绘图。

QPicture:保存绘图的状态(二进制文件)。

整理自B站视频,侵删歉。

猜你喜欢

转载自blog.csdn.net/happy_single/article/details/88429473