博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
捕获Camera并保存图片到本地(照相功能) -samhy
阅读量:6981 次
发布时间:2019-06-27

本文共 2199 字,大约阅读时间需要 7 分钟。

Flex博文
捕获Camera并保存图片到本地(照相功能) -samhy
作者:admin 日期:2010-07-12
字体大小: 小 中 大
捕获Camera并保存图片到本地(照相功能)
这几天对Camera类进行了一下规整,并利用JPGEncoder类实现了照相的功能,代码如下:

XML/HTML代码

import flash.media.Camera;
import flash.system.Security;
import flash.events.StatusEvent;
import flash.text.TextField;
import flash.events.ActivityEvent;
import flash.events.MouseEvent;
import flash.utils.Timer;
import flash.events.TimerEvent;
import flash.net.FileReference;
import com.adobe.images.JPGEncoder;
//Security.showSettings(SecurityPanel.PRIVACY);
//打开安全设置
var timer:Timer = new Timer(100);
timer.addEventListener(TimerEvent.TIMER,gettimer);
var txt:TextField = new TextField();
addChild(txt);
btn.visible = false;
var vid:Video;
var camera:Camera = Camera.getCamera();
var bitdata:BitmapData;
var bitmap:Bitmap;
if(camera == null){ txt.text = ("没有摄像头");
btn.visible = false; } else { txt.text = ("PC上面有摄像头");
Connectting();
}
function Connectting(){
vid = new Video(320,240);
vid.attachCamera(camera);
vid.x = 0;
vid.y = 50;
addChild(vid);
camera.addEventListener(StatusEvent.STATUS,getStatus);//查看用户是否允许访问摄像头
}
function getStatus(e:StatusEvent):void{
trace(e.code);
if(e.code == "Camera.Muted"){
txt.text = ("用户拒绝访问摄像头");
btn.visible = false;
} else{
txt.text = ("用户允许访问摄像头");
timer.start();
camera.addEventListener(ActivityEvent.ACTIVITY,getactivity);//查看摄像头的活动
camera.setQuality(0,100);
camera.setMode(320,240,24,true);//保证画质
btn.visible = true;
btn.addEventListener(MouseEvent.CLICK,saveImg);
}
}
function gettimer(e:TimerEvent):void{
SXTSL.text = String(camera.currentFPS);
WZZP.text = String(camera.keyFrameInterval);
SPYS.text = String(camera.loopback);
IMGQ.text = String(camera.quality);
}
function getactivity(e:ActivityEvent):void{
ML.text = String(camera.motionLevel);
XYL.text = String(camera.activityLevel);
}
function saveImg(e:MouseEvent):void{
bitdata= new BitmapData(320,240,true,0x000000);
bitdata.draw(vid);
var jpg:JPGEncoder = new JPGEncoder(100);
var file:FileReference = new FileReference();
var byteArray:ByteArray = jpg.encode(bitdata);
file.save(byteArray,"libufan.jpg");//如果要改文件名,请在修改的文件名后面加.jpg
}
来源于:http://www.as3hope.com/read.php?3

 

 

转载于:https://www.cnblogs.com/zdcaolei/archive/2011/08/15/2405306.html

你可能感兴趣的文章
自定义ListBox,实现单多选切换(复选框)
查看>>
软件测试2019:第八次作业
查看>>
Centos下安装FTP并进行虚拟用户访问方式配置
查看>>
python day09
查看>>
拆系数FFT及其部分优化
查看>>
cocos2dx3.8 ios打包脚本编写
查看>>
wordpress搭建博客上传begin主题The themes is locked to another domain
查看>>
2019-04-16 SpringMVC 学习笔记
查看>>
C10K问题
查看>>
慕课网3-13编程练习:采用flex弹性布局制作页面主导航
查看>>
线程中死锁的demo
查看>>
canvas-7globleCompositeOperation.html
查看>>
Java并发(具体实例)——几个例子
查看>>
【待补】java开发Web Service
查看>>
两个有用的数组扩展方法
查看>>
英语发音规则---H字母
查看>>
js进阶 10-11/12 表单伪类选择器的作用
查看>>
C#中Invoke的用法
查看>>
pxe无人值守安装操作系统
查看>>
UESTC 2014 Summer Training #11 Div.2
查看>>