asp.net使用摄像头拍照

来源:互联网 发布:营销软件三金网络 编辑:程序博客网 时间:2024/05/01 04:25
视频拍照的flash文件

import it.sephiroth.mloaderWindow
import it.sephiroth.PrintScreen


myCam 
= Camera.get();
myCam.setMode(
39029010);
my_video.attachVideo(myCam);
var loader:mloaderWindow 
= this.createClassObject(mloaderWindow, "loader"10{_x:-1000, _y:-1000})
//loader.setStyle("borderColor", 0x006699)

var listener:Object 
= new Object();


listener.onProgress 
= function(target:MovieClip, loaded:Number, total:Number){
 var perc 
= Math.round((loaded/total)*100)
 loader.label 
= "Sending... " + perc + "%"
 loader.value 
= perc
}


listener.onComplete 
= function(target:MovieClip, load_var:LoadVars){
 loader.label 
= "Sending..."
 load_var.send(
"makepic.aspx""_self""POST")
 loader.close()
}



function print_me()
{
 var mc_x 
= 15;
 var mc_y 
= 15;
 my_video.attachVideo(
null);
 pn 
= new PrintScreen(); 
 pn.addListener( listener ); 
 pn.print(_root, 
00390290, mc_x, mc_y) 
 loader.label 
= "输出中... 0%"
 loader.open(
truetruetrue); 
}


 

asp.net 获取flash拍照程序的数据: 

private bool CreateImage(string Path)
    
{

        
int w = 0;
        
int h = 0;

        
try
        
{
            w 
= int.Parse(Request.Form["width"]);
            h 
= int.Parse(Request.Form["height"]);
        }

        
catch (Exception ee)
        
{
            Response.Write(ee.Message);
            
return false;
        }


        Bitmap newmap 
= new Bitmap(w, h);
        
int rows = 0;
        
int cols = 0;

        Graphics gp 
= Graphics.FromImage(newmap);
        gp.Clear(Color.White);
        ImageCodecInfo myImageCodecInfo;
        System.Drawing.Imaging.Encoder myEncoder;
        EncoderParameter myEncoderParameter;
        EncoderParameters myEncoderParameters;
        myImageCodecInfo 
= ImageCodecInfo.GetImageEncoders()[1];
        myEncoder 
= System.Drawing.Imaging.Encoder.Quality;
        myEncoderParameters 
= new EncoderParameters(1);
        myEncoderParameter 
= new EncoderParameter(myEncoder, 95L);
        myEncoderParameters.Param[
0= myEncoderParameter;

        gp.CompositingQuality 
= CompositingQuality.HighQuality;
        gp.SmoothingMode 
= SmoothingMode.HighQuality;
        gp.InterpolationMode 
= InterpolationMode.HighQualityBicubic;
        gp.TextRenderingHint 
= TextRenderingHint.ClearTypeGridFit;
        
for (rows = 0; rows < newmap.Height; rows++//循环图片高度
        {
            
string px = Request["PX" + rows];
            
string[] c_row = px.Split(',');
            
for (cols = 0; cols < newmap.Width; cols++//循环图片宽度
            {

                
string values = c_row[cols];
                
if (values != "" && values != null)
                
{
                    
string hex = values;
                    
while (hex.Length < 6)
                    
{//防止颜色丢失
                        hex = "0" + hex;
                    }


                    
int r = int.Parse(hex.Substring(02), System.Globalization.NumberStyles.HexNumber);
                    
int g = int.Parse(hex.Substring(22), System.Globalization.NumberStyles.HexNumber);
                    
int b = int.Parse(hex.Substring(42), System.Globalization.NumberStyles.HexNumber);

                    newmap.SetPixel(cols, rows, Color.FromArgb(r, g, b));

                }

            }

        }


        gp.DrawImage(newmap, 
00, w, h);
        Path 
= Server.MapPath("makepic.aspx")+"123.jpg";
        
//保存路径,修改这里
        newmap.Save(Path, myImageCodecInfo, myEncoderParameters);
        myEncoderParameters.Dispose();
        gp.Dispose();
        newmap.Dispose();
        Response.Redirect(Path);
        
return true;
    }
 

 
原创粉丝点击