如何从flash对象创建'.png'图像

时间:2013-08-07 10:30:42

标签: php image flash open-flash-chart openflashchart2

如何从flash对象创建'.png'图像。

目前我在我的应用程序中使用'OpenFlashChart',它运行良好,并向我显示一个条形图或饼图,现在我想要做的是将该图表的'.png'图像存储在一个文件夹中。

注意:我已从此库中删除了'ofc_upload_image.php'文件,因为它存在某些漏洞。 所以,基本上我想要的是将闪光转换为'.png'图像。

提前致谢

1 个答案:

答案 0 :(得分:0)

在SWF中截取屏幕截图并对其进行编码非常简单:

var screen:BitmapData = new BitmapData(stage.stageWidth, stage.stageHeight);
screen.Draw(stage, null, null, null, new Rectangle(0, 0, stage.stageWidth, stage.stageHeight));

var encoder:PNGEncoder = new PNGEncoder();
var png:ByteArray = encoder.encode(screen);

您可以根据需要替换Rectangle参数,以仅捕获特定部分(例如您的图表)。

我将假设您要将图像上传到服务器,在这种情况下,您可以使用URLLoader发送包含编码的PNG数据的字节数组:

var request:URLRequest = new URLRequest(YOUR_URL);
request.contentType = "application/octet-stream";
request.method = URLRequestMethod.POST;
request.data = png;

var loader:URLLoader = new URLLoader();
loader.load(request);