刚开始提出要在手机浏览器中的HTML页面做扫描是有点懵的,一顿百度后搜到两种方法:
方案一,浏览器中打开相机navigator.mediaDevices.getUserMedia
- 自带浏览器不支持该属性,Chrome只支持HTTPS的链接,其它浏览器可以打开前置摄像头,后置摄像头的问题后来找到个方法,实测UC浏览器可用。
- 识别效率不高,需要自己将拍照的图片进行识别。
- 每次打开都会询问访问权限,浏览器关闭后再打开会有权限提示。
方案二,浏览器打开本地相机<input type="file" accept="image/*" capture="camera">
- 自带浏览器能够打开本地相机
- 需要用户进行手动操作,先点击扫描-打开本地相机-点击拍照-进行识别,如果第一次识别不到,需要用户重复手动操做
很明显第二种可以做图片上传啥的,但不适合做扫描,虽然第一种方案限制很大,但也只能硬着头皮做了。
成品长这样子