使用AS3SWF创建包含帧和位图的SWF

时间:2012-04-17 18:51:09

标签: bitmap flash actionscript-3

我需要收集大量图像并将其导入Flash。最简洁的方法似乎是使用AS3SWF创建一个每帧1个图像的时间轴。

有没有人有像这样的代码示例? AS3SWF看起来很棒,但它在文档方面并不重要。

1 个答案:

答案 0 :(得分:3)

我前一段时间和AS3SWF玩过,发现SWF format specs(pdf)和documentation非常有用。我仍然没有发现它特别容易,因为我没有适当的编程背景/组装经验。

您可以更轻松地解决问题:SWFTools。 它们是一堆开源实用程序,其中一些可能会帮助您完成任务,例如jpg2swfpng2swf

我目前在OSX上,所以下载了源代码并使用了典型的命令:

sudo ./configure
sudo make
sudo make install

我在Windows中看到已经有exe,所以它可能更简单。 我仍然想象你会从命令行调用实用程序。 在JSFL中使用未填充的fl.runCommandLine()函数时,这可以派上用场。 这是基于桌面上所有.png文件编译swf“幻灯片”的基本调用:

./png2swf -o ~/Desktop/desk.swf ~/Desktop/*.png

每个实用程序有很多选项,例如:

jpeg2swf

Usage: ./jpeg2swf [-options [value]] imagefiles[.jpg]|[.jpeg] [...]

-o , --output <outputfile>     Explicitly specify output file. (otherwise, output.swf will be used)
-q , --quality <quality>       Set compression quality (1-100, 1=worst, 100=best)
-r , --rate <framerate>        Set movie framerate (frames per second)
-z , --zlib <zlib>             Enable Flash 6 (MX) Zlib Compression
-M , --mx                      Use Flash MX H.263 compression (use for correlated images)
-x , --xoffset <offset>        horizontally offset images by <offset>
-y , --yoffset <offset>        vertically offset images by <offset>
-X , --width <width>           Force movie width to <width> (default: autodetect)
-Y , --height <height>         Force movie height to <height> (default: autodetect)
-T , --flashversion <version>      Set flash file version to <version>
-v , --verbose <level>         Set verbose level to <level> (0=quiet, 1=default, 2=debug)
-V , --version                 Print version information and exit
-f , --fit-to-movie            Fit images to movie size
-e , --export <assetname>          Make importable as asset with <assetname>

此外,可能值得在此old(2004) article by Keith Peters达到高峰。