如何使用 AnimatedImage 或其他方式为超过 256 种颜色的图像(即不是 GIF)制作动画
How to Animate an Image with more than 256 colors (i.e. not a GIF) using AnimatedImage or otherwise
我可以在 Qt 5.9 中使用 AnimatedImage
,它可以像这样处理 GIF;
import QtQuick 2.7
import QtQuick.Controls 2.2
ApplicationWindow
{
visible: true
width: 640
height: 480
Rectangle
{
width: animation.width;
height: animation.height + 8
AnimatedImage
{
id: animation;
source: "myanimation.gif"
}
Rectangle {
height: 8
width: animation.currentFrame/animation.frameCount * animation.width
y: animation.height
color: "red"
Component.onCompleted: console.log("framecount ", animation.frameCount);
}
}
}
我也收到很多错误消息。这是一遍又一遍地打印;
QQmlExpression: Expression qrc:/main.qml:26:20 depends on non-NOTIFYable properties:
QQuickAnimatedImage::frameCount
我从这里获取示例代码; http://doc.qt.io/qt-5/qml-qtquick-animatedimage.html
根本不起作用,将 frameCount
放入 属性 有问题,所以我在我的版本中进行了更改。
我想像 apng
一样为 png
制作动画。显然曾经有 mng
支持,但现在已经不存在了。
所以我调用 QMovie::supportedFormats
其中 returns 只有 GIF
(在 Windows 上)。
我的问题:
我如何在支持非调色板颜色(例如 png 等)的格式上使用 AnimatedImage
或 是否有另一种方法可以使图像动画化工作?
感谢您提供任何信息。
Qt/QML 的标准安装似乎没有附带这些图像格式。但是,您可以将它们安装为插件。
参见:
我可以在 Qt 5.9 中使用 AnimatedImage
,它可以像这样处理 GIF;
import QtQuick 2.7
import QtQuick.Controls 2.2
ApplicationWindow
{
visible: true
width: 640
height: 480
Rectangle
{
width: animation.width;
height: animation.height + 8
AnimatedImage
{
id: animation;
source: "myanimation.gif"
}
Rectangle {
height: 8
width: animation.currentFrame/animation.frameCount * animation.width
y: animation.height
color: "red"
Component.onCompleted: console.log("framecount ", animation.frameCount);
}
}
}
我也收到很多错误消息。这是一遍又一遍地打印;
QQmlExpression: Expression qrc:/main.qml:26:20 depends on non-NOTIFYable properties:
QQuickAnimatedImage::frameCount
我从这里获取示例代码; http://doc.qt.io/qt-5/qml-qtquick-animatedimage.html
根本不起作用,将 frameCount
放入 属性 有问题,所以我在我的版本中进行了更改。
我想像 apng
一样为 png
制作动画。显然曾经有 mng
支持,但现在已经不存在了。
所以我调用 QMovie::supportedFormats
其中 returns 只有 GIF
(在 Windows 上)。
我的问题:
我如何在支持非调色板颜色(例如 png 等)的格式上使用 AnimatedImage
或 是否有另一种方法可以使图像动画化工作?
感谢您提供任何信息。
Qt/QML 的标准安装似乎没有附带这些图像格式。但是,您可以将它们安装为插件。
参见: