Qt 支持的动画格式对比,Lottie/APNG/GIF/WEBP

Qt版本:6.7.2 , QML

一,Lottie

在qml中使用LottieAnimation即可,但有三个问题:

1.动画加载中报错:

如果图片(.json)本身存在不支持的effect 或shape type等,效果并不好:

2.Lottie动画无法框定大小:

比如将LottieAnimation放在一个Item中,item如果太小,就无法展示全动画,只能展示动画左上角的一部分。

  1. 资源加载问题:如果是线上资源https://.....可以正常加载,如果是"qrc:/...",则会报LottieAnimation.Error

所以个人感觉Lottie用处不大

二、APNG, 不予评置,老实说,APNG需要用到第三方plugins,非Qt官方插件,网上一搜,基本是3-4年前的个人开源项目,GitHub - mistificator/qapng: An apng image plugin for Qt to support animated PNGs

编译起来比较麻烦,略过

三,GIF 及webp,

QML中有 AnimatedImage:

支持GIF 及WEBP格式的动图,细节就不啰嗦了,说一些区别:

一个是GIF图容易出锯齿和模糊,webp好一些,二是内存消耗问题;理论上 来说webp内存消耗更低,大家可以尝试

简单记录,如有错误,欢迎指正

相关推荐
Mr_Xuhhh8 小时前
pytest -- 指定⽤例执⾏顺序
开发语言·python·pytest
F_D_Z9 小时前
【解决办法】网络训练报错AttributeError: module ‘jax.core‘ has no attribute ‘Shape‘.
开发语言·python·jax
chenyuhao20249 小时前
MySQL索引特性
开发语言·数据库·c++·后端·mysql
YY&DS9 小时前
Qt 快速搭建局域网 HTTP 下载服务(兼容 IE/Chrome/Edge/Firefox)
chrome·qt·http
laocooon5238578869 小时前
vue3 本文实现了一个Vue3折叠面板组件
开发语言·前端·javascript
q***69779 小时前
使用 Qt 插件和 SQLCipher 实现 SQLite 数据库加密与解密
数据库·qt·sqlite
zzlyx999 小时前
用C#采用Avalonia+Mapsui在离线地图上插入图片画信号扩散图
java·开发语言·c#
Yue丶越10 小时前
【C语言】自定义类型:结构体
c语言·开发语言
合作小小程序员小小店10 小时前
桌面开发,点餐管理系统开发,基于C#,winform,sql server数据库
开发语言·数据库·sql·microsoft·c#
笃行客从不躺平10 小时前
线程池监控是什么
java·开发语言