uni.chooseImage上传图片压缩
时间: 2024-08-17 15:01:38 浏览: 177
在uni-app框架中,`uni.chooseImage` 是用于选择图片的API,但它本身并不直接包含图片压缩的功能。如果你需要在选择图片后对图片进行压缩,你可以按照以下步骤操作:
1. **选择图片**:
```javascript
async chooseImage() {
let result = await uni.chooseImage({
count: 1, // 可选, 默认9,最多选取张数
sizeType: ['original', 'compressed'], // 可选,返回原图和压缩后的图
sourceType: ['album', 'camera'], // 可选,来源,只能二者之一
});
if (result.success) {
let compressedImgURL = result.tempFilePaths[0]; // 获取压缩后的图片路径
// ... 对图片进行后续处理
}
}
```
2. **使用第三方库压缩图片**:
uni-app支持使用如`@dcloudio/uni-image-compress`这样的插件来进行图片压缩。首先安装插件:
```
npm install @dcloudio/uni-image-compress --save
```
然后在项目中使用它:
```javascript
import ImageCompress from '@dcloudio/uni-image-compress';
compressImage(compressedImgURL) {
const imageCompress = new ImageCompress();
imageCompress.compress({
srcUrl: compressedImgURL,
destWidth: 500, // 目标宽度
destHeight: 500, // 目标高度
quality: 0.8, // 压缩质量,默认0.8
success: function(res) {
let compressedPath = res.tempFilePath; // 压缩后的文件路径
// ... 使用压缩后的图片路径
},
fail: function(err) {
console.error('图片压缩失败:', err);
},
});
}
```
阅读全文