【转】Flash AS3 保存图片到本地
核心提示:如果你想保存从视频,图表或表格中获取的图片数据到本地,可以使用BitmapData类。
原文地址:http://www.adobe.com/cfusion/communityengine/index.cfm?event=showdetails&productId=2&postId=8406如果你想保存从视频,图表或表格中获取的图片数据到本地,可以使用BitmapData类。摘要:使用BitmapData类来创建一个包含了从组件中获取的图片数据的对象,使用mx.graphics.codec包提供的方法编码为JPEG或PNG格式,然后使用AIR API提供的File和FileStream类保存到本地。具体方法:首先我们我们需要得到屏幕的截图,要做到这一点,我们要使用BitmapData类。比如我们想从一个命名为myChart的线状图表上获取截图:import flash.display.BitmapData;var bmpd:BitmapData = new BitmapData(myChart.width,myChart.height);bmpd.draw(myChart);然后我们需要把bitmapdata对象编译为ByteArray对象,这样我们就可以保存为文件了。这个ByteArray对象需要被格式化,我们可以使用mx.graphics.codec包中的JPEGEncoder和PNGEncoder类来实现它。编码为JPEG格式:import mx.graphics.codec.JPEGEncoder;//create a new instance of the encoder, and set the jpeg compression level from 0 to 100var jpgenc:JPEGEncoder = new JPEGEncoder(80);//encode the bitmapdata object and keep the encoded ByteArrayvar imgByteArray:ByteArray = jpgenc.encode(bmpd);编码为PNG格式:import mx.graphics.codec.JPEGEncoder;//create a new instance of the encodervar pngenc:PNGEncoder = new PNGEncoder();//encode the bitmapdata object and keep the encoded ByteArrayvar imgByteArray:ByteArray = pngenc.encode(bmpd);现在我们已经准备好了ByteArray数据,我们只需要把它保存到本地就可以了。我们可以用File和File Stream类来实现。建立一个JPEG文件参照://gets a reference to a new empty jpg image file in user desktopvar fl:File = File.desktopDirectory.resolvePath(”snapshot.jpg”);建立一个PNG文件参照://gets a reference to a new empty jpg image file in user desktopvar fl:File = File.desktopDirectory.resolvePath(”snapshot.png”);现在我们可以把ByteArray用File Stream保存到文件中。//Use a FileStream to save the bytearray as bytes to the new filevar fs:FileStream = new FileStream();try{//open file in write modefs.open(fl,FileMode.WRITE);//write bytes from the byte arrayfs.writeBytes(imgByteArray);//close the filefs.close();}catch(e:Error){trace(e.message);}【转】Flash AS3 保存图片到本地的更多相关文章
- HTML 保存图片到本地
具体方法有两种 一种是 利用canvas的 toDataUrl 和Html5 里面的 <a>标签里面的 Download 属性 虽然 Download 的兼容性不怎么样 但是在文章后 ...
- JS/HTML 保存图片到本地:HTML <a> download 属性
JS如何保存图片到本地呢?自己百度一下吧! 这里想要说的是,可以利用 HTML 的 <a> 标签 来是实现保存图片到本地的功能,参考代码如下: <a href="http: ...
- 转载:Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式
Flash AS3.0 加载外部资源(图片,MP3,SWF)的两种方式 出自:http://www.cnblogs.com/top5/archive/2012/08/04/2623464.html 关 ...
- js+Canvas 利用js 实现浏览器保存图片到本地
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 原生js 保存图片到本地
<template> <div> <!--创建一个cavas 用来存放图片--> <canvas id="cavasimg" width= ...
- Android笔记之使用ImageView加载网络图片以及保存图片到本地并更新图库
ImageView显示网络图片 findViewById(R.id.btnLoad).setOnClickListener(new View.OnClickListener() { @Override ...
- 微信小程序点击保存图片到本地相册——踩坑
在微信小程序中要保存图片到本地相册,需要获取相册权限. 总之整个功能实现下来需要如下几个小程序的API:wx.getSetting,wx.authorize,wx.openSetting,wx.dow ...
- flash as3.0 截图保存图片
import flash.display.MovieClip; import flash.events.MouseEvent; import flash.filesystem.*; ///////// ...
- flash as3 socket安全服务网关(socket policy file server)
关键字: SecurityErrorEvent socket as3 flash有着自己的一套安全处理模式,在socket方面,我这样的菜鸟无法理解他的好处:一句话,不怀好意的人如果想用flash写一 ...
随机推荐
- CSS伪元素实现的3D按钮
在线演示 本地下载
- 同类型元素,只有一个被选中js
<div class="wrap-box flex_row"> <div class="wrap-block"> <div cla ...
- JSP--内置对象&动作标签介绍
1.JSP中常用的9大内置对象? 内置对象:在JSP页面中能直接使用的对象就是JSP内置对象,事实上,JSP底层就是一个java类,可以在JSP中直接使用的,必然存在JSP翻译后的java类 下面简单 ...
- html页面转JSP之后样式变化的问题
html 保存为jsp 样式变化了 ,比如里面的一些input 获知是其他的一些样式变化的. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1 ...
- 斯特林公式求N!
n!的长度为 ll ans = log10(2*pi*n)/2 + n*(log10(n/exp(1.0)))+1;
- 微信内置浏览器http请求10秒内接收不到数据会自动重发第二遍请求
微信内置浏览器http请求10秒内接收不到数据会自动重发第二遍请求 这是个坑
- node操作mongdb的常用函数示例
node操作mongdb的常用函数示例 链接数据库 var mongoose = require('mongoose'); //引用数据库模块 mongoose.connect('mongodb:// ...
- js 图片加载失败处理方法
在项目中不可避免会用到图片,尤其是列表,有时候图片会加载失败:这样就会显示一个很难看的坏图片缩略图:下面介绍两种方法,解决这个问题: 1.如果在你的项目中有引入jQuery插件,你可以使用error( ...
- java开发环境的搭建(JDK的下载安装及环境变量的配置)
首先可以在Sun公司网站 http://java.sun.com 免费下载java se提供的JDK. 下载后再下载的文件夹下打开,双击jdk文件跟着提示进行安装,安装结束后——点击本机电脑的开始—— ...
- 论文笔记 — MatchNet: Unifying Feature and Metric Learning for Patch-Based Matching
论文:https://github.com/ei1994/my_reference_library/tree/master/papers 本文的贡献点如下: 1. 提出了一个新的利用深度网络架构基于p ...