vue移动端页面调用手机拍照_vue实现PC端调用摄像头拍照、移动端调用手机前置摄像头人脸录入、及图片旋转矫正、压缩上传base64格式/文件格式...

该博客介绍了一个Vue组件,用于在移动端和PC端调用摄像头拍照,并进行图片的压缩、旋转矫正,以及上传。通过EXIF获取图片旋转角度,使用canvas进行图片尺寸限制和压缩,最后通过XMLHttpRequest上传压缩后的图片。
摘要由CSDN通过智能技术生成

export default {

() {

return {}

},

methods: {

# // 压缩图片 and 旋转角度纠正 下方代码 # 需要自行去掉 个人只作为着色效果加上

compressImage (event) {

let _this = this

let file = event.target.files[0]

let fileReader = new FileReader()

let img = new Image()

let imgWidth = ''

let imgHeight = ''

# // 旋转角度

let Orientation = null

# // 缩放图片需要的canvas

let canvas = document.createElement('canvas')

let ctx = canvas.getContext('2d') # // 图片大小 大于2MB 则压缩

const isLt2MB = file.size < 2097152

# // 通过 EXIF 获取旋转角度 1 为正常 3 为 180° 6 顺时针90° 9 为 逆时针90°

EXIF.getData(file, function () {

EXIF.getAllTags(this)

Orientation = EXIF.getTag(this, 'Orientation')

})

# // 文件读取 成功执行

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值