vue开发移动端app调用摄像头,vue怎么调用摄像头
这篇文章主要为大家详细介绍了某视频剪辑软件实现调取手机摄像头和相册功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了某视频剪辑软件实现调取手机摄像头和相册的具体代码,供大家参考,具体内容如下
自己总结的手机端拍照和相册原生的方法
超文本标记语言代码
差异
//要显示的图片
div class=imgBox name
img :src=imgSrc /
/div
厢式车行动表v-model=show1
保险商实验所
李 @ click= captureImage()拍照/李
李@click=galleryImg()从相册选择/李
李@click=萧曲()取消/李
/ul
/凡-行动表
/div
射流研究…逻辑代码
//数据里声明的变量
data(){
返回{
imgSrc: ,//展示的图片路径
tupianlist: ,//展示的图片容器
}
}
在方法事件方法定义事件名
方法:{
//从相册中选取图片
galleryImg() {
让这个=这个;
console.log(从相册中选择图片:);
plus.gallery.pick(函数(路径){
This.imgSrc=path//路径是本地路径
设img=new Image();
img.src=path
img.onload=函数(路径){
那=img
var w=that.width,//320
h=that.height,//426
比例=宽/高;
w=320 w
h=w /刻度;
var canvas=文档。createelement(“canvas”);
canvas.width=300//这个设置不能丢,否者会成为帆布默认的300*150的大小
canvas.height=300//这个设置不能丢,否者会成为帆布默认的300*150的大小
var CTX=画布。获取上下文(“2d”);
ctx.drawImage(即,0,0,300,300);
var base64=canvas.toDataURL(
图像/png ,
图像/jpeg ,
图像/jpg ,
1 0.8
);
This.tupianlist=base64
//console.log(This.tupianlist 我是转码后的base’);
//这里可以请求接口
};
});
},
//拍照
captureImage() {
让这个=这个;
var CMR=plus。相机。获取camera();//获取摄像头管理对象
var RES=CMR。supportedimageresolutions[0];//字符串数组,摄像头支持的拍照分辨率
var fmt=CMR。supported image formats[0];//字符串数组,摄像头支持的拍照文件格式
//console.log(拍照分辨率: res ,拍照文件格式: fmt);
cmr .捕获图像
函数(路径){
plus.gallery.save(path,params={
let file=params.file
//编码为base64
var img=new Image();
img.src=file
img.onload=function() {
那=img
var w=宽度,
h=高度,
比例=宽/高;
w=320 w
h=w /刻度;
var canvas=文档。createelement(“canvas”);
canvas.width=300//这个设置不能丢,否者会成为帆布默认的300*150的大小
canvas.height=300//这个设置不能丢,否者会成为帆布默认的300*150的大小
var CTX=画布。获取上下文(“2d”);
ctx.drawImage(即,0,0,300,300);
var base64=canvas.toDataURL(
图像/png ,
图像/jpeg ,
图像/jpg ,
1 0.8
);
//控制台。日志(base64);
This.tupianlist=base64
//这里可以请求接口
};
});
//进行拍照操作
//通过统一资源定位器参数获取目录对象或文件对象
另外。io。resolvelocalfilesystemurl(路径,函数(条目){
var tmpPath=entry . tolocalurl();//获取转换为本地路径的目录路径的URL地址
this . img src=tmp path;
//alert(拍摄成功: tmpPath );
});
},
功能(错误){
//无法捕获图像回调
//alert(图像捕获失败: error . message );
},
{分辨率:分辨率,格式:fmt }
);
this.show1=false
},
}
这就是本文的全部内容。希望对大家的学习有帮助,支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。