uni-app web端使用getUserMedia,摄像头拍照

html 复制代码
<template>
	<view>
		<video id="video"></video>
	</view>
</template>	

摄像头显示在video标签上

javascript 复制代码
var opts = {
	audio: false,
	video: true
}

navigator.mediaDevices.getUserMedia(opts).then((stream)=> {
	video = document.querySelector('video');
	video.srcObject = stream
	video.play();
}).catch((err)=>{
	console.log(err)
});

拍照 npm i html2canvas

复制代码
cxBackToBlank() {
	uni.showLoading({});
	html2canvas(document.querySelector('video'), {
		backgroundColor: null,
		useCORS: true
	}).then(async (canvas) => {
		let url = canvas.toDataURL('image/jpeg');
	})
},
css 复制代码
<style scoped>
	#video {
		position: absolute;
		left: 100rpx;
		top: 100rpx;
		width: 1000rpx;
		height: 1000rpx;
	}
</style>	


相关推荐
九十一10 分钟前
websocket的连接原理
前端·javascript
iuuia16 分钟前
05--JavaScript基础语法(1)
开发语言·javascript·ecmascript
念你那丝微笑19 分钟前
vue实现批量导出二维码到PDF(支持分页生成 PDF)
前端·vue.js·pdf
Renounce24 分钟前
《Android Handler:线程间通信的核心实现》
前端
CAD老兵26 分钟前
打造高性能二维图纸渲染引擎系列(一):Batched Geometry 助你轻松渲染百万实体
前端·webgl·three.js
前端老宋Running26 分钟前
微信小程序的操作日志收集模块
前端
呼叫694528 分钟前
为什么`for...of` 循环无法输出对象的自定义属性?
javascript
CAD老兵30 分钟前
打造高性能二维图纸渲染引擎系列(三):高性能 CAD 文本渲染背后的隐藏工程
前端·webgl·three.js
CAD老兵34 分钟前
打造高性能二维图纸渲染引擎系列(二):创建结构化和可扩展的渲染场景
前端·webgl·three.js
王木风34 分钟前
1分钟理解什么是MySQL的Buffer Pool和LRU 算法?
前端·mysql