正文
图像显示类。
详细说明
使用source属性指定图像源的URL。Image支持Qt提供的所有标准图像格式,包括位图(PNG、JPEG等)和矢量图(SVG。如果需要显示动画图像,则使用AnimatedSprite或AnimatedImage。
如果未指定width和height属性,则Image将自动使用加载的图像的大小。默认情况下,指定的对象的宽度和高度会使图像缩放。可以通过设置fillMode属性来指定填充模式(允许拉伸和平铺图像)。
用法示例
以下示例展示了简单的用法:
import QtQuick 2.0
Image {
source: "pics/qtlogo.png"
}
OpenGL纹理说明
后端使用默认的OpenGL场景时,可以在压缩的纹理文件中提供图像。内容必须是简单的RGB(A)格式的2D纹理。支持的压缩方案仅受基础OpenGL驱动程序和GPU的限制。支持以下容器文件格式:
- PKM(从Qt 5.10开始)
- KTX(从Qt 5.11开始)
- ASTC(从Qt 5.13开始)
注意:半透明的原始图像需要先进行Alpha预乘,然后再进行文件压缩,以便在Qt Quick中正确显示。可以使用以下ImageMagick命令行完成操作:
convert foo.png \( +clone -alpha Extract \) -channel RGB -compose Multiply -composite foo_pm.png
自动检测文件扩展名
如果Image URL指定不存在的本地文件或资源,则Image元素将尝试自动检测文件扩展名。如果可以通过附加任意一种支持的图像格式文件扩展名来找到现有文件,则将加载该文件。
如果正则使用OpenGL场景,则文件搜索将先尝试OpenGL纹理文件扩展名。如果搜索失败,则尝试使用图像文件扩展名搜索。例如:
// 假设“ pics”目录包含以下文件:
// dog.jpg
// cat.png
// cat.pkm
Image {
source: "pics/cat.png" // loads cat.png
}
Image {
source: "pics/dog" //