我需要收集大量图像并将其导入Flash。最简洁的方法似乎是使用AS3SWF创建一个每帧1个图像的时间轴。
有没有人有像这样的代码示例? AS3SWF看起来很棒,但它在文档方面并不重要。
答案 0 :(得分:3)
我前一段时间和AS3SWF玩过,发现SWF format specs(pdf)和documentation非常有用。我仍然没有发现它特别容易,因为我没有适当的编程背景/组装经验。
您可以更轻松地解决问题:SWFTools。
它们是一堆开源实用程序,其中一些可能会帮助您完成任务,例如jpg2swf
和png2swf
我目前在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达到高峰。