Flash 实现高清摄像头拍照并保存为JPG图片

首先在flash中新建一个AS3的Flash文件,在文档的属性中定义基类为PhotoSnap 在文件中加入一个button组件,并命名为btn1 。再创建一个AS3脚本文件,文件名为:PhotoSnap.as将下面的代码复制到脚本文件中。保存,运行就可以了。

package
{
import flash.media.*;
import flash.display.*;
import flash.net.*;
import fl.controls.*;
import flash.events.*;
import flash.geom.*;
import com.adobe.images.JPGEncoder;
public class PhotoSnap extends Sprite
{

var Cam:Camera;
var vid:Video;
public function PhotoSnap():void
{

Cam=Camera.getCamera("0");
if(Cam==null){trace("无摄像头\n");}
Cam.setMode(1280,720,10);
Cam.setQuality(0,100);
vid=new Video(160,90);
vid.x=20;
vid.y=50;
vid.attachCamera(Cam);
addChild(vid);


btn1.addEventListener(MouseEvent.CLICK, savepic);

}
public function savepic(event:MouseEvent)
{
var jpgSource = new BitmapData(Cam.width,Cam.height);
var myMatrix:Matrix=new Matrix();
myMatrix.scale(8,8);//关键处,该处的值应该是由video的大小和camera设置的大小决定的。
jpgSource.draw(vid,myMatrix);
var file:FileReference = new FileReference();
var jpg:JPGEncoder = new JPGEncoder(100);
file.save(jpg.encode(jpgSource),"b.jpg");
}
}

}

其中import com.adobe.images.JPGEncoder; 的jpeg开发包的下载地址是 http://code.google.com/p/as3corelib/

下载后解压,找到目录as3corelib-.92.1\as3corelib-.92.1\lib\as3corelib.swc文件复制到flash安装目录下的Common\Configuration\ActionScript 3.0\libs 就可以了。
www.yuanshi88.com
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值