Home Backend Development PHP Tutorial jsp ID photo implementation code

jsp ID photo implementation code

Nov 29, 2016 am 10:21 AM
JavaScript jsp

The implementation idea is as follows:

1. Set up the photo background, such as using red cloth or blue cloth, etc. White walls are also acceptable.

2. Choose a high-definition camera, such as Logitech and other high-definition cameras. The higher the resolution supported, the better.

3. Use ImageCapOnWeb to process photos.

4. Call the start method of the control to start acquiring the camera video

5. Call the cap() method to take pictures

6. Call the selectRect method to select the avatar area. If you are not satisfied, you can manually fine-tune it.

7. Call the cutSelected method to crop the selected area

8. Save the photo results.

The code is as follows:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>控件测试页面</title>
<script type="text/javascript">
function startCam(){
var capActivexObject=document.getElementById(&#39;cap1&#39;);
//启动摄像头
capActivexObject.start();
}
function capPicture1(){
var capActivexObject=document.getElementById(&#39;cap1&#39;);
capActivexObject.cap(); //控制摄像头拍照
}
function selectPic(){
var capActivexObject=document.getElementById(&#39;cap1&#39;);
capActivexObject.selectRect(0.3,0.25,0.6,0.8);//具体含义请查看文档
}
function cutSelectedPic(){
var capActivexObject=document.getElementById(&#39;cap1&#39;);
capActivexObject.cutSelected();
}
function submitToServer(){
//读取控件的拍照结果到hidden输入项中
var base64_data1 = document.getElementById(&#39;cap1&#39;).jpegBase64Data;
if (base64_data1.length==0) {
alert(&#39;请先拍照!&#39;);
return false;
}
document.getElementById(&#39;picData1&#39;).value=base64_data1;
document.getElementById(&#39;picExt1&#39;).value=&#39;.jpg&#39;;
/*注意不同的服务器端技术要配置不同的接收数据的url,可以参考submit.html的示
如asp.net的程序员可以查看submit.aspx,php程序员可以查看submit.php,asp程序员可以查看submit.asp
*/
//document.forms[0].action="http://localhost:8080/pages/submit.jsp";
alert(&#39;请先打开demo6.html配置服务器端程序参数再继续测试!&#39;);
return false;
document.forms[0].submit();
}
</script>
</head>
<body>
<form  method="post" >
<input type="hidden" id="picData1" name="picData1"/>
<input type="hidden" id="picExt1"  name="picExt1"/>
<input type="hidden" id="picData2" name="picData2"/>
<input type="hidden" id="picExt2"  name="picExt2"/>
<p>
<input type="button" value="启动摄像头" onclick="javascript:startCam();"  />
<input type="button" value="拍照片" onclick="javascript:capPicture1();"  />
<input type="button" value="选中头像区域" onclick="javascript:selectPic();"  />
<input type="button" value="裁剪选中区域" onclick="javascript:cutSelectedPic()"  />
<input type="button" value="提交到服务器端" onclick="javascript:submitToServer();"  /> <br/>
<input type="button" value="清除结果" onclick="javascript:document.getElementById(&#39;cap1&#39;).clear();"  />
</p>
<object classid="clsid:34681DB3-58E6-4512-86F2-9477F1A9F3D8" id="cap1" width="640" height="480" codebase="../cabs/ImageCapOnWeb.cab#version=2,0,0,0">
<param name="Visible" value="0">
<param name="AutoScroll" value="0">
<param name="AutoSize" value="0">
<param name="AxBorderStyle" value="1">
<param name="Caption" value="scaner">
<param name="Color" value="4278190095">
<param name="Font" value="宋体">
<param name="KeyPreview" value="0">
<param name="PixelsPerInch" value="96">
<param name="PrintScale" value="1">
<param name="Scaled" value="-1">
<param name="DropTarget" value="0">
<param name="HelpFile" value>
<param name="PopupMode" value="0">
<param name="ScreenSnap" value="0">
<param name="SnapBuffer" value="10">
<param name="DockSite" value="0">
<param name="DoubleBuffered" value="0">
<param name="ParentDoubleBuffered" value="0">
<param name="UseDockManager" value="0">
<param name="Enabled" value="-1">
<param name="AlignWithMargins" value="0">
<param name="ParentCustomHint" value="-1">
<param name="licenseMode" value="2">
<param name="key1" value="">
<param name="key2" value="">
</object>
</form>
<script type="text/javascript">
document.all.cap1.SwitchWatchOnly();  //切换到只显示摄像头画面形式,隐藏编辑按钮等图标.
</script>
</body>
</html>
Copy after login
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*,java.io.*" errorPage="" %>
<%
String savePath=config.getServletContext().getRealPath("/")+"//";
File tmp_path=new File(savePath);
tmp_path.mkdirs();
System.out.println("照片数据保存路径:"+savePath);
String pic_base_64_data=request.getParameter("picData");
//如果下面的代码输出true则说明需要调整服务器软件工作参数,解决接受post数据的大小限制问题,例如
//tomcat的话需要在server.xml中配置maxPostSize="0"来解除上传数据的大小限制   <Connector port="8080" protocol="HTTP/1.1" 
//               connectionTimeout="20000" 
//               redirectPort="8443" maxPostSize="0"/>
// 
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("<a href=&#39;" + request.getContextPath()+"/"+ filename + "&#39;>click here</a>");
out.flush();
out.close();
%>
Copy after login


Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. How to Fix Audio if You Can't Hear Anyone
3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: How To Unlock Everything In MyRise
1 months ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Is jsp front-end or back-end? Is jsp front-end or back-end? Jan 28, 2023 pm 06:23 PM

jsp belongs to the backend. The essence of jsp is a servlet, and servlet is a server-side java application, so jsp is a back-end technology. JSP is deployed on the web server and can respond to requests sent by the client and dynamically generate web pages of HTML, XML or other format documents based on the request content, and then return them to the requester. JSP technology uses Java as a scripting language to provide services for user HTTP requests, and can handle complex business requirements together with other Java programs on the server.

How to integrate JSP in SpringBoot project How to integrate JSP in SpringBoot project May 12, 2023 pm 07:40 PM

After the new springboot project is created, the directory is as follows: Step 1: Add the jar package code required to configure jsp to the project's pom file: org.apache.tomcat.embedtomcat-embed-jasperprovided Step 2: Create a new directory webapp under the main path , create a new path WEB-INF under webapp, create a new path jsp under WEB-INF, and place the jsp file we want to use under this path. Step 3: Configure the access path and suffix code of the jsp file in the main configuration file: spring .mvc.view.prefix=/WEB-INF/jsp/sp

What is the difference between jsp and html What is the difference between jsp and html Jan 09, 2024 am 10:46 AM

The difference between jsp and html: 1. Operating mechanism; 2. Purpose; 3. Relationship with Java; 4. Function; 5. Relationship with back-end; 6. Speed; 7. Maintainability and scalability; 8. Learning and use Difficulty; 9. File suffixes and identification tools; 10. Community and support; 11. Security. Detailed introduction: 1. Operating mechanism. HTML is a markup language, mainly used to describe and define the content of web pages. It runs on the client and is interpreted and executed by the browser. JSP is a dynamic web page technology that runs on the server side, etc. wait.

How to implement jsp paging function How to implement jsp paging function Mar 04, 2024 pm 04:40 PM

Implementation steps: 1. Introduce the JSTL tag library into the JSP page; 2. Obtain data from the database; 3. Paging the data; 4. Display the paging navigation bar in the page; 5. Display the number according to the current page number and each page. , just get the corresponding data from the paging data and display it on the page.

How to use jsp+mysql to implement paging query on web pages How to use jsp+mysql to implement paging query on web pages May 30, 2023 pm 03:58 PM

1. The core sql statement to implement paging query (1) The sql statement to query the total number of records in the database: selectcount(*)from+(table name); (2) The sql statement to query the number of records for each query: where: 0 is searched Index, 2 is the number of items searched each time. select*from table name limit0,2; 2. Code implementation* I wrote these two classes in the previous article, DBconnection class: used to obtain database connections, Author object class. Click on the link to view the code for these two classes. Click the link to view the DBconnection class and Author object class (1) Login page: index.jsp. Inserttitlehere user column

Can JSP be replaced by PHP? Can JSP be replaced by PHP? Mar 21, 2024 am 11:03 AM

Can JSP be replaced by PHP? JSP (JavaServerPages) and PHP (HypertextPreprocessor) are commonly used server-side scripting languages ​​for dynamically generating web page content. Although they each have their own characteristics and advantages, can they completely replace each other in practical applications? This article will analyze the advantages and disadvantages of the two and compare them through specific code examples. First, let's take a look at the respective characteristics of JSP and PHP. JSP is a Java-based

What format is jsp? What format is jsp? Jan 24, 2024 pm 04:01 PM

​JSP is a dynamic web technology standard. Its file format is to insert Java program segments (Scriptlet) and JSP tags (tags) into traditional web page HTML files (.htm, .html) to form JSP files (*.jsp ).

Java technology stack for web development: Understand Java EE, Servlet, JSP, Spring and other technologies commonly used in web development Java technology stack for web development: Understand Java EE, Servlet, JSP, Spring and other technologies commonly used in web development Dec 26, 2023 pm 02:29 PM

JavaWeb development technology stack: Master JavaEE, Servlet, JSP, Spring and other technologies used for Web development. With the rapid development of the Internet, in today's software development field, the development of Web applications has become a very important technical requirement. As a widely used programming language, Java also plays an important role in the field of Web development. The JavaWeb development technology stack involves multiple technologies, such as JavaEE, Servlet, JSP, Spr

See all articles