HTML5属性--(capture="camera") 上传照片或者打开手机相机
要获取手机相机拍照或者访问相册 这里贴一个相关链接:http://blog.csdn.net/jackfrued/article/details/8967667
JSP页面代码:
<input type="file" accept="image/*" capture="camera" id="picFile" onchange="readFile(this)" style="width:30px;height:30px;opacity:0"/ >
JS代码:
function readFile(obj){
var file = obj.files[0];
//判断类型是不是图片 不难发现这个检测是基于正则表达式的,因此可以进行各种复杂的匹配,非常有用。
if(!/image\/\w+/.test(file.type)){
alert("请确保文件为图像类型");
return false;
}
var reader = new FileReader();
reader.readAsDataURL(file);
reader.onload = function(e){
getResultbyOCR(this.result);
}
}
function getResultbyOCR(imagesdata) {
var requestdata = {
imagesdata: imagesdata
};
$.ajax({
type: "POST",
url: getUrl() + "/vehicleInfor/getResultbyOCR.do",
data: JSON.stringify(requestdata),
// 将对象序列化成JSON字符串
dataType: "json",
beforeSend: function () {
this.layerIndex = layer.load(0, { shade: [0.5, '#393D49'],time: 60*1000});
},
contentType: 'application/json;charset=utf-8',
// 设置请求头信息
success: function(data) {
if (data.length == 0) {
layer.close(this.layerIndex);
alert("识别失败");
} else {
var outputValue = data.outputs[0].outputValue;
if (outputValue != null && "undefined" !== typeof(outputValue)) {
var datavalue = outputValue.dataValue;
if (datavalue != null && "undefined" !== typeof(datavalue)) {
datavalue = eval("(" + datavalue + ")");
var successflag = datavalue.success;
if (successflag) {
var engine_num = datavalue.engine_num;
var modelName = datavalue.model;
var owner = datavalue.owner;
var plate_num = datavalue.plate_num;
var register_date = datavalue.register_date;
var vin = datavalue.vin;
$("#drvowner").val(owner);
$("#lcnno").val(plate_num);
$("#vinno").val(vin);
$("#model").val(modelName);
$("#engno").val(engine_num);
$("#registerdate").val(register_date);
layer.close(this.layerIndex);
} else {
layer.close(this.layerIndex);
alert("识别失败");
}
} else {
layer.close(this.layerIndex);
alert("识别失败");
}
} else {
layer.close(this.layerIndex);
alert("识别失败");
}
}
},
error: function(res) {
layer.close(this.layerIndex);
alert("识别失败");
}
});
}
Java代码:
@RequestMapping("/getResultbyOCR.do")
public @ResponseBody String getResultbyOCR( @RequestBody String requestData,HttpServletResponse response){
logger.info("开始识别行驶证 图片内容为 : "+requestData);
String result=vehicleInforService.getVehicleinforByOCR( requestData);
logger.info("结束识别行驶证,结果为 : "+result);
return result;
}
HTML5属性--(capture="camera") 上传照片或者打开手机相机的更多相关文章
- LocalResizeIMG前端HTML5本地压缩图片上传,兼容移动设备IOS,android
LocalResizeIMG前端HTML5本地压缩图片上传,兼容移动设备IOS,android jincon 发表于 2015-02-26 18:31:01 发表在: php开发 localresiz ...
- HTML5 图片本地压缩上传插件「localResizeIMG」
移动应用中用户往往需要上传照片,但是用户上传的照片尺寸通常很大,而手机的流量却很有限,所以在上传前对图像进行压缩是很有必要的. 原生应用可以直接对文件进行处理,网页应用就没有这个优势了.不过 canv ...
- 基于HTML5多图片Ajax上传可预览
html5多图控件<input id="fileImage" type="file" size="30" name="fil ...
- 怎么样通过php使用html5实现多文件上传?(php多图上传)
<!DOCTYPE html><html lang="zh-cn"> <head> <meta charset="utf-8&q ...
- HTML5手机端拍照上传
1.accept="image/*" capture="camera" 自动调用手机端拍照功能 accept="image/*" captu ...
- Django项目:CRM(客户关系管理系统)--61--51PerfectCRM实现CRM客户报名流程学生合同上传照片
# sales_views.py # ————————47PerfectCRM实现CRM客户报名流程———————— from django.db import IntegrityError # 主动 ...
- Iphone H5上传照片被旋转
最近做项目发现在Iphone下,我们上传图片都会被翻转,最后查阅资料发现,的确是IOS的问题 不说过程,直接解决方法 iOS下,html方式使用<input type="file&qu ...
- html5 文件拖拽上传
本文首先发表在 码蜂笔记 : http://coderbee.net/index.php/web/20130703/266 html5 文件拖拽上传是个老话题了,网上有很多例子,我一开始的代码也是网 ...
- 深入研究HTML5实现图片压缩上传
上篇文章中提到移动端上传图片,我们知道现在流量还是挺贵的,手机的像素是越来越高,拍个照动不动就是好几M,伤不起.虽然客户端可以轻轻松松实现图片压缩再上传,但是我们的应用还可能在浏览器里面打开,怎么办呢 ...
随机推荐
- Touch ID使用
前言:如果图片看不了请移步:简书 Touch ID简介 Touch ID指纹识别作为iPhone 5s上的"杀手级"功能早已为人们所熟知,目前搭载的设备有iphone SE.iPh ...
- IOS开发之Bug--使用KVC的易错情况
1.其实某些角度而言KVC是一个破坏封装又暴力的做法,而我已经两次因为KVC而导致应用程序出现闪退的情况. 场景:1.使用KVC修改某一个UIView的属性,比如width. 2.在viewWi ...
- 基于显卡的光栅化渲染器Gaius计划
决定实现一个基于显卡的光栅化渲染器,能将一些基于显卡的新算法融入其中.
- #研发解决方案#discache-分布式缓存查询与管理系统
郑昀 基于马海元和闫小波的文档 关键词:memcached.redis.分布式缓存.控制台.反序列化.Java 本文档适用人员:研发和运维员工 提纲: 如何查看缓存里的序列化数据? 批量删除来一个 监 ...
- 专用服务器模式&共享服务器模式
连接ORACLE服务器一般有两种方式:专用服务器连接(dedicated server)和共享服务器连接(shared server).那么两者有啥区别和不同呢?下面我们将对这两者的区别与不同一一剖析 ...
- David Camp 微信公众平台开发官方内容拓展版---PHP版本
微信公众平台开发(一) 配置接口 微信公众平台开发(二) 微信公众平台示例代码分析 微信公众平台开发(三) 订阅事件(subscribe)处理 微信公众平台开发(四) 简单回复功能开发 微信公众平台开 ...
- 烂泥:阿里云RDS本地恢复数据
本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 公司目前使用的数据库是阿里云的RDS,目前RDS的版本为mysql5.6.如下: 现在要 ...
- 锐捷与Vmare网络冲突解决办法
首先,禁用掉VMare的两个适配器,然后在我的电脑右键管理中找到服务,把VMare的所有服务开起来,并把手动改成自动,最后把VMare的网络设置设置为NAT连接即可.
- 常用python机器学习库总结
开始学习Python,之后渐渐成为我学习工作中的第一辅助脚本语言,虽然开发语言是Java,但平时的很多文本数据处理任务都交给了Python.这些年来,接触和使用了很多Python工具包,特别是在文本处 ...
- saltstack简单部署和实践
#Elaine:master;Dylan:minion#利用salt给minion安装包[root@elaine states]# vim /etc/salt/master default_inclu ...