【问题标题】:Create and Display 'File Copy' like Animation像动画一样创建和显示“文件副本”
【发布时间】:2009-07-08 03:15:01
【问题描述】:

我在互联网上搜索了很多,现在我正在拔头发。我认为这应该是比较简单的。我确定我不是第一个想要这样做的人。

这是我想做的:

  1. 我想从静止图像“编译”自定义动画,并将其保存为 avi 或其他一些 [动画] 文件格式。只要是单个文件。

    • 我已经拥有带有透明背景和阴影(即 Alpha 通道)的 PNG 格式的图像/帧。
    • 我希望在完成的动画中保留阴影/透明度/Alpha 通道。
    • 如果需要将图像/帧转换为另一种格式,可以这样做。
  2. 我想在 .net windows.forms 控件中托管此动画,并能够循环播放它(就像您在 Windows XP 中复制文件时获得的动画一样)。

    • 我希望在动画中保持透明度的原因是我想在动画后面显示自定义图像,并在运行时根据发生的情况更改图像。

好的,这就是我想要做的。以下是我知道的和不知道的。

我已经下载并尝试了几种不同的动画制作应用程序。主要是围绕从 .bmp 文件创建 .avi 文件。 我已经使用这些应用程序成功创建了动画,不知道是否保留了透明度,更多内容如下。 我可以使用 MCISendString 和/或 DirectX.DirectShow 在 Windows 窗体控件中播放动画。

但是,当我播放动画时,背景是黑色的,而不是透明的。我不知道的是,这是因为动画不包含透明数据还是因为播放器不支持透明?

如果某些术语有误,请见谅,希望您能明白要点。

掉头发很快……

基思。

【问题讨论】:

    标签: .net winforms animation


    【解决方案1】:

    您能否将动画的背景颜色更改为与将在其上播放的窗口相同的颜色?这会使它看起来透明,因为它与窗口的颜色相同。

    或者,您可以使用 Fireworks 中的 BMP 制作 GIF 吗? (GIMP 也可以做到这一点)。 GIF 可能比应用程序中的 AVI 更轻量级,而且它也可能在透明度方面保持不变。

    【讨论】:

    • 我需要在动画后面显示一张图片。所以改变背景颜色不是一种选择。至于动画 GIF,我认为他们不支持 alpha 通道?如果我没有得到更理想的解决方案,也许有可能。
    • GIF,如果你做对了,应该是透明的。我之前已经完成了一些亮粉色的,但修复它并不难。我知道它们在网页上是透明的,所以我假设它们在 .net 中应该是透明的。
    • 透明 - 是的,alpha 通道 - 我不这么认为。 Alpha 通道允许您指定不透明度/透明度级别。例如:使用 Alpha 通道,您可以指定不透明度为 50% 的蓝色。渲染图像时,50% 不透明的蓝色与下面的颜色/图像混合。该技术用于在 XP/vista/7 中产生平滑的图标阴影。有了基本的透明度,我认为它可以用于 GIF,你可以说像素是 [纯色] 或透明的,而不是 50% 的透明。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-18
    • 1970-01-01
    • 2011-10-16
    • 1970-01-01
    • 2013-10-03
    • 2014-03-28
    相关资源
    最近更新 更多