【问题标题】:Android changes color of pixels while decoding an ImageAndroid在解码图像时改变像素的颜色
【发布时间】:2017-09-13 22:14:33
【问题描述】:

我有一个 .png 图像,我想将其加载到我的应用程序中。它是一种以特定颜色着色的形状,因此每个像素都具有完全相同的 RGB 值。唯一的区别是 alpha 值,它在形状的边缘处减小。

我的问题是,如果我使用BitmapFactory.decodeResource() 加载图像,边缘上的像素会得到另一个 RGB 值。这不是一个大的变化,它只是 -+4 红色/绿色/蓝色值,但对我来说这是一个很大的变化,因为像素必须是这种精确的颜色。

我想将它们屏蔽掉并用另一种颜色替换它们。这个特定的颜色是我的指示器,以便我找到我想要更改的像素。如果我改变颜色,边缘的颜色仍然不同,这很烦人。

有没有办法在不改变它们的情况下加载 Drawable?

【问题讨论】:

    标签: android image colors drawable


    【解决方案1】:

    您应该尝试使用此变体:

    decodeResource(Resources res, int id, BitmapFactory.Options opts)
    

    配置选项。使用它的参数 inPreferredColorSpaceoutColorSpaceinPreferredConfigoutConfig

    【讨论】:

    • 对不起,但这不会改变任何事情。而且 inPreferredColorSpace 的 API 太高了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多