教育技术论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 3964|回复: 2
收起左侧

FLASH AS3将摄像头拍照保存到本地

[复制链接]
发表于 2013-8-4 23:06:29 | 显示全部楼层 |阅读模式
系统要求:Flash CS5以上(保证flashplayer播放器10.2以上),需要com.adobe.images.JPGEncoderr类,附件里面有。
打开flash CS5,新建AS3文档,舞台上放置一个按钮:,btn1
文档类文件PhotoSnap.as:
  1. ‍package
  2. {
  3. import flash.media.*;
  4. import flash.display.*;
  5. import flash.net.*;
  6. import fl.controls.*;
  7. import flash.events.*;
  8. import flash.geom.*;
  9. import com.adobe.images.JPGEncoder;

  10. public class PhotoSnap extends Sprite
  11. {
  12. var Cam:Camera;
  13. var vid:Video;
  14. public function PhotoSnap():void
  15. {
  16. Cam = Camera.getCamera("0");
  17. if (Cam == null)
  18. {
  19. trace("无摄像头\n");
  20. }
  21. Cam.setMode(1280,720,10);
  22. Cam.setQuality(0,100);
  23. vid = new Video(160,90);
  24. vid.x = 20;
  25. vid.y = 50;
  26. vid.attachCamera(Cam);
  27. addChild(vid);
  28. btn1.addEventListener(MouseEvent.CLICK, savepic);
  29. }
  30. public function savepic(event:MouseEvent)
  31. {
  32. var jpgSource = new BitmapData(Cam.width,Cam.height);
  33. var myMatrix:Matrix=new Matrix();
  34. myMatrix.scale(8,8);
  35. //关键处,该处的值应该是由video的大小和camera设置的大小决定的。;
  36. jpgSource.draw(vid,myMatrix);
  37. var file:FileReference = new FileReference();
  38. var jpg:JPGEncoder = new JPGEncoder(100);
  39. file.save(jpg.encode(jpgSource),"b.jpg");
  40. }
  41. }
  42. }
复制代码
案例下载:

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
欢迎大家多发帖,参与讨论,增进彼此了解。
ET网友  发表于 2013-10-26 19:18:15
ddddddddddddddddd
欢迎大家多发帖,参与讨论,增进彼此了解。

升级  21%

发表于 2014-11-28 09:27:03 | 显示全部楼层
谢谢了,下载看看
欢迎大家多发帖,参与讨论,增进彼此了解。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表