fix:连拍改用takePhoto全分辨率+裁剪1080×1080解决模糊

This commit is contained in:
ShenQiLun 2026-06-26 09:28:31 +08:00
parent 22f9114730
commit b09e2e7aee

View File

@ -123,7 +123,7 @@
uni.showToast({ title: '相机未就绪', icon: 'none' }) uni.showToast({ title: '相机未就绪', icon: 'none' })
return return
} }
this.$refs.cameraRef.takePhotoSnapshot() this.$refs.cameraRef.takePhoto()
}, },
onPictureTaken(e) { onPictureTaken(e) {
var path = '' var path = ''
@ -131,9 +131,46 @@
path = e.detail.path || '' path = e.detail.path || ''
} }
if (path) { if (path) {
this.capturedList.push(path) this.resizeTo1080(path)
} }
}, },
// 居中裁剪为 1080×1080
resizeTo1080(srcPath) {
var that = this
uni.getImageInfo({
src: srcPath,
success: function(info) {
var w = info.width
var h = info.height
var size = Math.min(w, h)
var clipX = Math.floor((w - size) / 2)
var clipY = Math.floor((h - size) / 2)
plus.zip.compressImage({
src: srcPath,
dst: '_doc/sq_' + Date.now() + '.jpg',
width: '1080',
height: '1080',
quality: 95,
overwrite: true,
clip: {
x: clipX,
y: clipY,
width: size,
height: size
}
},
function(res) {
that.capturedList.push(res.target)
},
function() {
that.capturedList.push(srcPath)
})
},
fail: function() {
that.capturedList.push(srcPath)
}
})
},
flipCamera() { flipCamera() {
this.facing = this.facing === 'back' ? 'front' : 'back' this.facing = this.facing === 'back' ? 'front' : 'back'
this.$refs.cameraRef.changeFacing(this.facing) this.$refs.cameraRef.changeFacing(this.facing)