FLASH摄像头拍照实现原理分析_JSP版.docx_第1页
FLASH摄像头拍照实现原理分析_JSP版.docx_第2页
FLASH摄像头拍照实现原理分析_JSP版.docx_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

flash摄像头拍照实现原理分析最近一段时间,由于网站的需要,做了一个在线拍照的flash,刚开始的时候也是什么都不懂,对flash也是了解点皮毛,经过不断的在网上查阅资料。经过一周的努力,终于被我搞定了。主要用到camera类,movieclip 类,bitmapdata类,loadvars类,如果要实现这个功能,必须先去了解这几个类实现的过程如下。1,先在库中新建一个视频元件,把视频元件拖放到场景中,取名为my_video,新建一个按纽元件,取名为btn_print.2,加入以下代码实现视频的播放mycam = camera.get();mycam.setmode(266,200,10);my_video.attachvideo(mycam);3 ,以下代码实现图片的获得和上传import flash.display.bitmapdata;import flash.geom.rectangle;import flash.geom.colortransform;class printscreen public var addlistener:functionpublic var broadcastmessage:functionprivate var id: number;public var record:loadvars;function printscreen() asbroadcaster.initialize( this );public function print(mc:movieclip, w:number, h:number) broadcastmessage(onstart, mc); w = math.floor(w); h = math.floor(h); var bmp:bitmapdata = new bitmapdata(w, h, false); record = new loadvars(); record.width = w record.height = h record.cols = 0 record.rows = 0 bmp.draw(mc); id = setinterval(copysource, 1, this, mc, bmp);private function copysource(scope, movie, bit) var pixel:number var str_pixel:string scope.recordpx + scope.record.rows = new array(); for(var a = 0; a = bit.height) clearinterval(scope.id) bit.dispose(); 4 以下代码在服务器段接受数据,生成图片(jsp版)string width = request.getparameter(width);string height = request.getparameter(height);int w = integer.parseint(width); int h = integer.parseint(height);try outputstream fos = response.getoutputstream(); bufferedimage bf = new bufferedimage(w, h, bufferedimage.type_int_rgb); for (int i = 0; i bf.getheight(); i+) string data = request.getparameter(px + i); string ds = data.split(,); for (int j = 0; j bf.getwidth(); j+) int d = integer.parseint(dsj, 16); bf.setrgb(j, i, d); imagewriter writer = null; imagetypespecifier type = imagetypespecifier .createfromrenderedimage(bf); iterator iter = imageio.getimagewriters(type, jpg); if (iter.hasnext() writer = (imagewriter) iter.next(); if (writer = null) return null; iioimage iioimage = new iioimage(bf, null, null); imagewriteparam param = writer.getdefaultwriteparam(); param.setcompressionmode(imagewriteparam.mode_explicit); param.setcompressionquality(0.2f); / save to file imageoutputstream outputstream2 = imageio .createimageoutputstream(response.getoutputstream(); writer.setoutput(outputstream2); writer.write(null, iioimage, param); fos.close(); catch

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论