如果我在QML中有一个图像项目,我是否可以找出图像的原始尺寸及其字节大小?
例如,如果我有以下 QML:
import QtQuick 2.0
Image {
source: "http://someURL.jpg"
asynchronous: true
sourceSize.width: 800
sourceSize.height: 600
}
完全加载后,我可以获取图像的原始尺寸和字节大小吗?我无法在Image
的文档中找到这样的属性。
如果我在 QML 中有一个图像项目,我是否可以找到 图像的原始尺寸及其字节大小?
异步加载的问题在于我们需要知道图像准备就绪的时刻,并且有一种方法可以做到这一点。QtQuick Image 具有属性状态,我们可以将信号附加到该状态:
Image {
source: "http://someURL.jpg"
asynchronous: true
onStatusChanged: {
if (status == Image.Ready) {
console.log('Loaded: sourceSize ==', sourceSize);
}
}
}
因此,我们应该从sourceSize
阅读,但准备好了。