在iPhone iOS6和Android ICS以上,HTML5具有以下标签,可让您从设备拍摄照片:
Run Code Online (Sandbox Code Playgroud)<input type="file" accept="image/*" capture="camera">Capture可以采用相机,摄像机和音频等值.
是否可以通过使用某种类型的jax来进一步采取这一步骤,以便在拍摄后立即上传照片?
例如,使用我的手机,一旦我点击输入,它然后打开相机,这将立即允许我拍照并保存.当我将其保存到相机时,它会被输入按钮列为要上传的文件.
如何立即上传此照片而不是等待用户单击表单的"提交"按钮需要什么?
我使用geUserMedia()从摄像头介绍中捕获图像.
我得到的最佳分辨率是640 X 480,但我有高清网络摄像头,用1280 X 720录制视频,拍摄照片2592 X 1944.
如何拍摄高分辨率照片?
这是一个代码示例.它不关心画布大小:
<video autoplay id="vid" style="display:none;"></video>
<canvas id="canvas" width="1280" height="720" style="border:1px solid #d3d3d3;"></canvas><br>
<button onclick="snapshot()">Take Picture</button>
<script type="text/javascript">
var video = document.querySelector("#vid");
var canvas = document.querySelector('#canvas');
var ctx = canvas.getContext('2d');
var localMediaStream = null;
var onCameraFail = function (e) {
console.log('Camera did not work.', e);
};
function snapshot() {
if (localMediaStream) {
ctx.drawImage(video, 0, 0);
}
}
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia …Run Code Online (Sandbox Code Playgroud)