gpt4 book ai didi

Java:将一维数组映射到位图

转载 作者:行者123 更新时间:2023-12-02 08:44:09 25 4
gpt4 key购买 nike

我有以下 2D 数组,用于保存 RGB channel 的颜色强度值。

// create a 2d array for colors
int[][] rgbColors = {
{255, 0, 0}, //red
{0, 255, 0}, //green
{0, 0, 255}, //blue
};

我有另一个一维数组:

// Data array
int [] data = {0, 0, 0, 1, 1, 1, 2, 2, 2}

我想将 data 数组 reshape 为 3x3 位图图像,以便所有 0 值都映射到红色,所有 1 值都映射到绿色,所有2 个值映射到结果位图中的蓝色。换句话说,生成的位图将具有分别具有红色、绿色和蓝色的三行。颜色值在 rgbColors 2D 数组中给出。实现这一目标最有效的方法是什么?

编辑:

我尝试了以下操作,但它不起作用并生成了一个空的白色图像。

bitmap = Bitmap.createBitmap(data, 3, 3, Bitmap.Config.ARGB_8888);

最佳答案

阅读文档(我对 Android 没有任何专业知识),我认为将 data 数组更改为

    int[] data = {-65536,
-65536,
-65536,
-16711936,
-16711936,
-16711936,
-16776961,
-16776961,
-16776961
};

可以工作,但您需要阅读docs了解参数的含义。

关于Java:将一维数组映射到位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61193390/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com