实现思路如下:
1.设置好拍照背景,如使用红布或者蓝布等等,白墙也可以。
2.选择高清的摄像头,如罗技等高清摄像头,支持的分辨率越高越好。
3.使用ImageCapOnWeb处理拍照。
4.调用控件的start方法开始获取摄像头视频
5.调用cap()方法拍照
6.调用selectRect方法选中头像区域,不满意的话可以手动微调。集装箱运费
7.调用cutSelected方法裁剪使用选中区域
8.保存拍照结果。
代码如下:
//
System.out.println(null==pic_base_64_data);
System.out.println("base64 string length:"+pic_base_64_data.length());
String fileFormat=request.getParameter("picExt");
sun.misc.BASE64Decoder decode=new sun.misc.BASE64Decoder();
byte[] datas=decode.decodeBuffer(pic_base_64_data);
String filename=String.valueOf(System.currentTimeMillis() )+fileFormat;
File file=new File(savePath+filename);
OutputStream fos=new FileOutputStream(file);
System.out.println("图片文件名称:"+filename);
fos.write(datas);
fos.close();
out.print("click here");
out.flush();
out.close();
%>
控件测试页面女装品牌排行榜
function startCam(){
var capActivexObject=document.getElementById('cap1');
//启动摄像头
capActivexObject.start();
}
function capPicture1(){
var capActivexObject=document.getElementById('cap1');
capActivexObject.cap(); //控制摄像头拍照
}
function selectPic(){
var capActivexObject=document.getElementById('cap1');
capActivexObject.selectRect(0.3,0.25,0.6,0.8);//具体含义请查看文档
}
function cutSelectedPic(){
var capActivexObject=document.getElementById('cap1');
capActivexObject.cutSelected();
}
function submitToServer(){
//读取控件的拍照结果到hidden输入项中
var base64_data1 = document.getElementById('cap1').jpegBase64Data;
if (base64_data1.length==0) {
alert('请先拍照!');
return false;
}
document.getElementById('picData1').value=base64_d ata1;
document.getElementById('picExt1').value='.jpg';
/*注意不同的服务器端技术要配置不同的接收数据的url,可以参考submit.html的示
如asp.net的程序员可以查看submit.aspx,php程序员可以查看submit.php,asp程序员可以查看submit.asp
*/
//document.forms[0].action="http://localhost:8080/ pages/submit.jsp";
alert('请先打开demo6.html配置服务器端程序参数再继续测试!');
return false;
document.forms[0].submit();
}
document.all.cap1.SwitchWatchOnly(); //切换到只显示摄像头画面形式,隐藏编辑按钮等图标.
1.设置好拍照背景,如使用红布或者蓝布等等,白墙也可以。
2.选择高清的摄像头,如罗技等高清摄像头,支持的分辨率越高越好。
3.使用ImageCapOnWeb处理拍照。
4.调用控件的start方法开始获取摄像头视频
5.调用cap()方法拍照
6.调用selectRect方法选中头像区域,不满意的话可以手动微调。集装箱运费
7.调用cutSelected方法裁剪使用选中区域
8.保存拍照结果。
代码如下:
//
System.out.println(null==pic_base_64_data);
System.out.println("base64 string length:"+pic_base_64_data.length());
String fileFormat=request.getParameter("picExt");
sun.misc.BASE64Decoder decode=new sun.misc.BASE64Decoder();
byte[] datas=decode.decodeBuffer(pic_base_64_data);
String filename=String.valueOf(System.currentTimeMillis() )+fileFormat;
File file=new File(savePath+filename);
OutputStream fos=new FileOutputStream(file);
System.out.println("图片文件名称:"+filename);
fos.write(datas);
fos.close();
out.print("click here");
out.flush();
out.close();
%>
控件测试页面女装品牌排行榜
function startCam(){
var capActivexObject=document.getElementById('cap1');
//启动摄像头
capActivexObject.start();
}
function capPicture1(){
var capActivexObject=document.getElementById('cap1');
capActivexObject.cap(); //控制摄像头拍照
}
function selectPic(){
var capActivexObject=document.getElementById('cap1');
capActivexObject.selectRect(0.3,0.25,0.6,0.8);//具体含义请查看文档
}
function cutSelectedPic(){
var capActivexObject=document.getElementById('cap1');
capActivexObject.cutSelected();
}
function submitToServer(){
//读取控件的拍照结果到hidden输入项中
var base64_data1 = document.getElementById('cap1').jpegBase64Data;
if (base64_data1.length==0) {
alert('请先拍照!');
return false;
}
document.getElementById('picData1').value=base64_d ata1;
document.getElementById('picExt1').value='.jpg';
/*注意不同的服务器端技术要配置不同的接收数据的url,可以参考submit.html的示
如asp.net的程序员可以查看submit.aspx,php程序员可以查看submit.php,asp程序员可以查看submit.asp
*/
//document.forms[0].action="http://localhost:8080/ pages/submit.jsp";
alert('请先打开demo6.html配置服务器端程序参数再继续测试!');
return false;
document.forms[0].submit();
}
document.all.cap1.SwitchWatchOnly(); //切换到只显示摄像头画面形式,隐藏编辑按钮等图标.