如何使用 Photoshop 优化动画 GIF 中的重复帧?

平面设计 adobe-photoshop gif 文件大小 优化
2022-01-12 17:00:29

我一直在试验一种叫做cinemagraphs的技术。这种技术可以制作动画 GIF,其中只有一小部分场景是动画的。这是我刚做的一个快速的:

在此处输入图像描述

到目前为止,Photoshop 在压缩场景的静态部分方面做得很好。通过仅屏蔽移动部分,您可以节省几兆字节。

在此处输入图像描述

Photoshop 没有很好地优化的是重复的帧。为了获得无缝循环,我复制所有帧并将它们反转。在上面的例子中,播音员向左转,需要转回原来的位置。这总是使 GIF 的大小加倍我如何告诉 Photoshop 优化重复的帧,就像优化静态区域一样?在时间轴面板的菜单中,我已经使用了“优化动画”选项,但这并没有做任何事情......

1个回答

如果我理解你的问题,你有一个(比如说)5 帧的动画。帧 1 和 5、2 和 4 相同。所以你希望 Photoshop 像这样播放 gif:1,2,3,2,1。

不幸的是,使用动画 gif 是不可能的。构建 Gif 以允许数据流式传输,在加载数据时按顺序显示下一帧。第一帧被认为是全局的,它的数据可以在每个后续帧中使用。因此,第一帧设置了基础,然后“优化动画”将相同像素在第一帧之外的帧中变为透明。所以没有办法重播前一帧,即使一帧与当前帧相同,它们也必须运行。维基百科比我更详细地解释它。

很久以前,我通过 javascript 和编号的 jpg 序列做了一些与您正在寻找的类似的事情(看看菜单)。该脚本在鼠标悬停时播放图像 1-10,然后在鼠标悬停时播放 10-1。