9.1 使用QPxmap类加载图片

举报
DS小龙哥 发表于 2021/12/10 00:01:23 2021/12/10
【摘要】 第9章 图形绘制与视图框架 Qt提供了四个类用于处理图像数据:QImage、QPixmap、QBitmap、QPicture。一般利用QImage、QPxmap类实现图像的加载显示,使用其类中的方法可以实现图像的基本操作(缩放、旋转)。QBitmap是一个继承于QPixmap的简单类,用于显示单色图片。在界面中通常使用QLabel控件...

第9章 图形绘制与视图框架

Qt提供了四个类用于处理图像数据:QImage、QPixmap、QBitmap、QPicture。一般利用QImage、QPxmap类实现图像的加载显示,使用其类中的方法可以实现图像的基本操作(缩放、旋转)。QBitmap是一个继承于QPixmap的简单类,用于显示单色图片。在界面中通常使用QLabel控件来显示图像,QLabel的setPixmap()函数用于设置显示图像或者使用QPainter画出图像。

QImage与Qpixmap的区别如下:

1、QPixmap主要是用于绘图,针对屏幕显示而最佳化设计,QImage主要是为图像I/O、图片访问和像素修改而设计的,当图片小的情况下,直接用QPixmap进行加载,一般图片大的情况下,用QImage进行加载,然后转QPixmap绘制。

2、QPixmap依赖于所在的平台的绘图引擎,例如反锯齿等一些效果在不同的平台上可能会有不同的显示效果,QImage使用Qt自身的绘图引擎,可在不同平台上具有相同的显示效果。所以QPixmap绘图依赖于硬件,QImage独立于硬件。

3、由于QImage是独立于硬件的,也是一种QPaintDevice,因此我们可以在另一个线程中对其进行绘制,而不需要在GUI线程中处理,使用这一方式可以很大幅度提高UI响应速度。

参考Qt的帮助文档,可查看当前QT支持的图片类型,或者可以通过QImageReader

文章来源: xiaolong.blog.csdn.net,作者:DS小龙哥,版权归原作者所有,如需转载,请联系作者。

原文链接:xiaolong.blog.csdn.net/article/details/120889849

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。