【问题标题】:Windows photo viewer does not open bitmap compressed images from Android studioWindows 照片查看器无法从 Android Studio 打开位图压缩图像
【发布时间】:2020-05-20 05:32:41
【问题描述】:

我正在使用 android 自定义相机捕获 JPG 图像,但无法在 Windows 照片查看器上预览它们。任何人都可以请建议。使用 Ms Paint、Office、Windows 10 Photo 应用程序等其他应用程序可以看到图像。

【问题讨论】:

  • 找到解决方案了吗?

标签: android android-studio android-image android-image-capture


【解决方案1】:

这显然是由 Android 将添加到位图中的 ICC 颜色配置文件引起的。 Windows 照片查看器无法显示具有该 ICC 颜色配置文件的图像。

我还没有发现这个 ICC 配置文件是如何生成的,我认为这是由 Android Bitmap.compress 函数完成的。

删除配置文件,例如ImageMagick 将“修复”文件,它们也将在照片查看器中打开。

【讨论】:

【解决方案2】:

从 Android 10 开始,Bitmap.compress() 似乎添加了 ICC 配置文件。

此问题是由于添加的 ICC 配置文件中的版本值不正确造成的。 此问题已在 skia 问题跟踪器上报告并修复。 不知道什么时候会在Android上修复。
https://bugs.chromium.org/p/skia/issues/detail?id=12491

因此,从使用 Bitmap.compress() 生成的 jpeg 图像中删除 ICC 配置文件似乎是目前最好的方法。 要以编程方式解决它,您需要解析使用 Bitmap.compress() 生成的 JPEG 数据以删除 ICC 配置文件段。

【讨论】:

    【解决方案3】:

    此问题的其他答案已经解释了可能由与 Android 采用的图像压缩技术相关的一些错误引起的问题,导致图像无法在 Windows 照片查看器中打开。

    我已多次向 Google 和 Android 社​​区报告此问题,但即使经过多次 Android 升级,此问题仍然存在。

    我知道这个问题很烦人,在没有直接解决方案之后,我希望与可靠的开源软件分享一个简单可靠的解决方案。

    1. 对于单个图像,使用 GIMP 打开图像然后导出 (CTRL+SHIFT+E) 替换现有文件时的原样图像。

    2. 对于多个图像,请使用 CAESIUM 图像压缩器并将质量设置为 100%。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多