【发布时间】:2012-02-05 23:10:07
【问题描述】:
我正在尝试转换 GIF 图像(Ajax 等类似):
转为将与 TAnimate 控件(win32 动画控件)一起使用的 AVI。
我尝试了一些工具,但问题是输出的 AVI 要么不适合动画控件,要么不透明。
注意事项:
- 我不使用 Windows XP 主题清单 (D5)。 即使我的程序没有主题,Common Avi 也是透明的。
- 不能使用 GIF 本身来显示动画。
你知道有什么工具可以帮助我进行这种转换吗?
编辑:
我已尝试将ImageMagic 与ffmpeg 一起使用,如here 所述。但我似乎无法将ffmpeg 设置为编码为msrle。
【问题讨论】:
-
我很高兴我自己从
TImageList渲染每一帧而不依赖TAnimate(我经常使用Ajax 加载动画:) 转换软件的问题可能是因为TAnimate不知道任何 DivX 或此类编解码器。 -
@TLama,对不起,但这不是我的选择:)
-
我过去曾使用 Jasc Animation Shop,但 Corel 似乎不再提供它。
-
@Mark,我喜欢 Jasc Software 的旧东西;他们拥有真正用户友好的工具;)但回到问题上来;我对动画控件进行了更深入的研究,您似乎只需要创建一个 AVI 文件(未压缩或使用运行长度编码压缩),您希望在第一帧的左上角像素上透明的颜色 的视频剪辑。它记录在动画控制样式
here。 -
在 Delphi 中,此样式表示为
TAnimate.Transparent,因此请将其设置为 True(您最有可能拥有的)并尝试渲染第一帧左上角像素的视频设置为您想要透明的颜色。无论如何,除了这个“解决方法”之外,动画控件不支持动画透明度。如果您说您已经能够渲染此控件支持的 AVI 文件但它不透明,那么就这样做;只需修改第一帧的图像;)