QT小技巧 - 使用QMovie进行gif切帧
2023-12-25 11:03:43
简介
使用QMovie 将 gif 进行切帧, magick 进行合并
代码
QString gifPath = "E:\\workspace\\qt\\gif2imgs\\203526qre64haq3ccoobqi.gif"; // 你的图片
QMovie movie(gifPath);
movie.setCacheMode(QMovie::CacheNone);
qDebug() << movie.frameCount();
int frameCount = movie.frameCount(); // 帧数
qDebug() << "Frame count:" << frameCount;
// 遍历每一帧并将其保存为图片
for (int i = 0; i < frameCount; ++i) {
qDebug() << "Jump Res: " << movie.jumpToFrame(i);
QPixmap pixmap = movie.currentPixmap();
pixmap.save(qApp->applicationDirPath() + QString("/frame_%1.png").arg(i));
}
gif原图
结果图
magick 合并
magick.exe convert frame_0.png frame_1.png frame_2.png out1.gif
magick 拆分
magick.exe convert out1.gif -coalesce o_%d.png
文章来源:https://blog.csdn.net/halo_hsuh/article/details/135188674
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!