SWF截图

时间:2011-01-15 13:04:35

标签: flash

我有一组.swf文件,它们都有不同的尺寸。

如何自动创建这些Flash动画的屏幕截图?

会非常方便,因为否则我将不得不手动制作几百部闪电影的截图。

TIA。

2 个答案:

答案 0 :(得分:0)


将集合中的每个swf加载到flash movieclip&执行以下操作。

如果mc是加载了flash影片的动画片段:

BitmapData myBitmapData=new BitmapData(mc.width,mc.height,false);       
myBitmapData.draw(mc);

获得位图数据后,您可以执行任何操作来获取图像。查看Adobe reference以了解您可以对此位图数据执行的操作。

此外,Adobe Flash Player 10现在允许直接保存位图文件。

var bitmap : Bitmap = new Bitmap(myBitmapData);
var jpg:JPEGEncoder = new JPEGEncoder();
var ba:ByteArray = jpg.encode(bitmapData);
file.save(ba, 'ScreenShot'+ i + '.jpg'); // i is the incrementing variable in the loop

以上将文件保存为ScreenShot1.jpg,ScreenShot2.jpg ....等等。

但它每次都会要求确认(闪存播放器的限制)

答案 1 :(得分:0)

我会做AIR应用程序。所有它需要的是两个目录 - 源码与swf和屏幕截图的目的地。使用Loader加载每个剪辑,使用BitmapData.draw截取屏幕截图,使用JPEGEncoder进行编码(还有PNGEncoder)并保存到文件。没有确认,AIR可以自动完成所有这些操作。只需学习File类和编码器。