QPixmap和QImage

1、QPixmap

QPixmap的设计本来就是用来加速显示,用paint绘图时用QPixmap会比其他类的效果好很多。一般小图片用QPixmap。

 

2、QImage

依赖软件,直接像素访问,适合大图片

 

3、QPixmap和QImage输出图片方式

1 void Widget::paintEvent(QPaintEvent *)
2 {
3     QPainter p(this);
4     QImage img;
5     img.load("../Image/1.jpg");
6     p.drawImage(rect(),img);
7     //p.drawPixmap(rect(),QPixmap("../Image/2.jpg"));  
8 }
View Code

 

4、如果想用QPixmap加速显示,但是图片过大,可以用QImage先把图片加载进来—调整大小—转成QPixmap输出

1 void Widget::paintEvent(QPaintEvent *)
2 {
3     QPainter p(this);
4     QImage img;
5     img.load("../Image/2.jpg");
6     QPixmap pix_img = QPixmap::fromImage(img.scaled(size(),Qt::KeepAspectRatio));
7     p.drawPixmap(rect(),pix_img);
8 }
View Code

 

posted @ 2020-02-26 15:20  补码  阅读(2054)  评论(0编辑  收藏  举报