应用思考-教育技术论坛

标题: FLASH AS3将摄像头拍照保存到本地 [打印本页]

作者: etthink    时间: 2013-8-4 23:06
标题: FLASH AS3将摄像头拍照保存到本地
系统要求: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. }
复制代码
案例下载: (, 下载次数: 87)

作者: 此q停用    时间: 2013-10-26 19:18
ddddddddddddddddd
作者: fxjt111    时间: 2014-11-28 09:27
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 应用思考-教育技术论坛 (http://etthink.com/) Powered by Discuz! X3.4