作者cassatte (..)
看板Flash
标题[心得] Flash懒人包:撷取画面并储存
时间Sat Jan 9 16:30:19 2010
要先下载安装
ActionScript 3.0 library for several basic utilities.
http://code.google.com/p/as3corelib/
写在最前面,载入PNG编码套件
import com.adobe.images.PNGEncoder;
然後新增按键事件
stage.addEventListener(KeyboardEvent.KEY_UP, _capture);
最後当然要新增按键处理function
function _capture(e:KeyboardEvent){
// CTRL + S
if(e.keyCode ==
83 && e.ctrlKey){
var i:BitmapData = new BitmapData(stage.stageWidth, stage.stageHeight);
i.draw(
stage);
var b:ByteArray = PNGEncoder.encode(i);
var f:FileReference = new FileReference();
// 档案名称预设会加上TIME字串,可以视情况修改
f.save(b, "
Filename-" +
new Date().time.toString() + ".png");
}
}
因为是懒人包,所以贴文也不会太勤劳,但是内容应该不难。
黄字自己换掉,没想到Keyboard的一些static变数居然是AIR ONLY!
当然这个方法有一些小问题。按下CTRL+S之後马上就跳出的储存视窗,
在场景快速变化,或是手残太早或是太晚按的时候,很容易出问题。
而且很多人都写过了,所以下一个改版会新增一个有趣的功能~
网页版
http://cassatte.tw/yunsi/capture-flash-work-screen
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.224.205.16
※ 编辑: cassatte 来自: 61.224.205.16 (01/09 16:31)
※ 编辑: cassatte 来自: 59.112.239.242 (01/11 02:42)
1F:推 akkusativ:推倒卡撒特>////< 01/11 11:41
2F:→ cassatte:楼上金变态 01/12 03:48
※ 编辑: cassatte 来自: 61.216.141.192 (01/12 04:28)
3F:推 cjcat2266:感觉好像推文变了... 01/12 15:13