如何从flash对象创建'.png'图像。
目前我在我的应用程序中使用'OpenFlashChart',它运行良好,并向我显示一个条形图或饼图,现在我想要做的是将该图表的'.png'图像存储在一个文件夹中。
注意:我已从此库中删除了'ofc_upload_image.php'文件,因为它存在某些漏洞。 所以,基本上我想要的是将闪光转换为'.png'图像。
提前致谢
答案 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);