uni-app 在线打包后使用uni.chooseImage图片旋转问题,使用基座测试正常

uni-app 在线打包后使用uni.chooseImage图片旋转问题,使用基座测试正常

操作步骤:

  • 在线打包后使用uni.chooseImage图片旋转,使用基座测试正常

预期结果:

  • 图片不旋转

实际结果:

  • 图片旋转

bug描述:

原图比较大 在附件里面

uni.chooseImage({  
    count: 9, //默认9  
    sizeType: ['compressed'],  
    sourceType: ['album', 'camera'], //从相册选择  
    success: async (res) => {  
    } 
})

附件


更多关于uni-app 在线打包后使用uni.chooseImage图片旋转问题,使用基座测试正常的实战教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于uni-app 在线打包后使用uni.chooseImage图片旋转问题,使用基座测试正常的实战教程也可以访问 https://www.itying.com/category-93-b0.html


这是一个常见的 EXIF 方向信息处理问题。在基座测试正常但在打包后出现图片旋转,通常是因为不同环境对图片 EXIF 信息的处理方式不同。

问题原因:

  • 某些手机拍摄的图片包含 EXIF 方向信息
  • 基座应用可能自动处理了方向信息,而打包后的应用未正确处理
  • 在线打包时可能使用了不同的图片处理库或配置

解决方案:

  1. 使用 compressed 模式时,可以尝试添加 image-orientation: 'up' 参数:
uni.chooseImage({
    count: 9,
    sizeType: ['compressed'],
    sourceType: ['album', 'camera'],
    imageOrientation: 'up', // 强制不旋转
    success: async (res) => {
        // 处理图片
    }
})
  1. 如果问题仍然存在,可以在成功回调中手动处理图片方向:
// 使用第三方库如 exif-js 读取 EXIF 信息并校正方向
// 或使用 canvas 重新绘制图片以修正方向
回到顶部