首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Flash >

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

2012-08-28 
Flash 实现高清摄像头拍照并保存为JPG图片首先在flash中新建一个AS3的Flash文件,在文档的属性中定义基类为

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

热点排行