gpt4 book ai didi

javascript - 如何使用 Vue.Js 在 Android 和 iOS 上打开前置摄像头并拍照?

转载 作者:太空宇宙 更新时间:2023-11-03 22:17:21 25 4
gpt4 key购买 nike

我正在开发 PWA Vue.Js 应用程序,我需要使用移动设备的前置摄像头拍摄用户照片。

我已经在我的桌面浏览器上编写了一些代码,但我没有成功让它在移动设备上运行。

这是我到目前为止尝试过的:


<div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
<div class="snippet-code">
<pre class="snippet-code-html lang-html prettyprint-override"><code><template>
<div id="camera">
<div>
<video ref="video" id="video" width="100%" height="100%" autoplay/>
</div>
<div>
<button id="snap" v-on:click="capture()">Snap Photo</button>
</div>
<canvas ref="canvas" id="canvas" width="100%" height="100%"/>>
</div>
</template></code></pre>
</div>
</div>


<div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
<div class="snippet-code">
<pre class="snippet-code-js lang-js prettyprint-override"><code><script>

export default {
name: 'Camera',
data() {
return {
video: {},
canvas: {},
captures: []
}
},
mounted() {
this.video = this.$refs.video;
if(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
navigator.mediaDevices.getUserMedia({ video: true }).then(stream => {
video.srcObject = stream;
video.play();
video.onplay = function () {
};
this.video.play();
});
}
},
methods: {
capture() {
this.canvas = this.$refs.canvas;
var context = this.canvas.getContext("2d").drawImage(this.video, 0, 0, 640, 480);
this.captures.push(canvas.toDataURL("image/webp"));
}
}
}
</script></code></pre>
</div>
</div>


<div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false">
<div class="snippet-code">
<pre class="snippet-code-css lang-css prettyprint-override"><code><style>
#camera {
text-align: center;
color: #2c3e50;
}
#video {
background-color: #000000;
}
#canvas {
display: none;
}
li {
display: inline;
padding: 5px;
}
</style></code></pre>
</div>
</div>


我应该怎么做才能让它在移动设备上运行?

最佳答案

为什么要使用跟随 html 5 标签 的按钮它会起作用:

<input type="file" accept="image/*" capture="camera" />

关于javascript - 如何使用 Vue.Js 在 Android 和 iOS 上打开前置摄像头并拍照?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55955223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com