webcam.js有人实现过嘛 h5调用navigator.getUserMedia已经实现,但是用canvas绘制出的图片失真,想问一下有什么办法直接获取电脑自带相机拍照的照片吗
webcam.js有人实现过嘛 h5调用navigator.getUserMedia已经实现,但是用canvas绘制出的图片失真,想问一下有什么办法直接获取电脑自带相机拍照的照片吗
navigator.getUserMedia
https://developer.mozilla.org...
给html上的canvas写上widht="3840" height="2160"
context.drawImage(video, 0, 0, 1920,1080);
改成
context.drawImage(video, 0, 0, 3840,2160);
把两处
{
video: true
}
改为
{
"video": {width: 3840, height: 2160}
},
还有另一种方案
<input type="file" capture="camera" accept="image/*"/>
压缩的话
https://developer.mozilla.org...
type传'image/jpeg'再设置合适的encoderOptions值,或者修改之前代码中canvas尺寸
10 回答11.1k 阅读
6 回答3k 阅读
5 回答4.8k 阅读✓ 已解决
4 回答3.1k 阅读✓ 已解决
2 回答2.7k 阅读✓ 已解决
4 回答2.5k 阅读✓ 已解决
3 回答1.4k 阅读✓ 已解决
调用摄像头:
navigator.mediaDevices.getUserMedia
拍照:
context.drawImage(video, 0, 0, 480, 320);
转base64:
var img_base64 = canvas.toDataURL("image/jpeg", 0.5);