java - 如何在java中将二维整数数组转换为图像?

标签 java arrays graphics integer 2d

我有一个正整数数组。我如何将其显示为图像?我还不知道数组包含的值的范围或数组的大小。有人提出了类似的问题here 。但如果不搜索可能非常大的数组,我不知道可能的值。就效率和代码长度而言,执行此操作的最佳方法是什么?

这是数据的一个小示例

    0   2   4   6   8   10  12  14  16
    2   2   6   6   10  10  14  14  18
    4   6   4   6   12  14  12  14  20
    6   6   6   6   14  14  14  14  22
    8   10  12  14  8   10  12  14  24
   10   10  14  14  10  10  14  14  26
   12   14  12  14  12  14  12  14  28
   14   14  14  14  14  14  14  14  30
   16   18  20  22  24  26  28  30  16
   18   18  22  22  26  26  30  30  18

最佳答案

看看here .

int xLenght = arr.length;
int yLength = arr[0].length;
BufferedImage b = new BufferedImage(xLenght, yLength, 3);

for(int x = 0; x < xLenght; x++) {
    for(int y = 0; y < yLength; y++) {
        int rgb = (int)arr[x][y]<<16 | (int)arr[x][y] << 8 | (int)arr[x][y]
        b.setRGB(x, y, rgb);
    }
}
ImageIO.write(b, "Doublearray", new File("Doublearray.jpg"));
System.out.println("end");

现在,重构此代码以读取正确的输入。

关于java - 如何在java中将二维整数数组转换为图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31169932/

相关文章:

java - 如何为我没有在 Java EE 中编写的类定义单例对象?

javascript - 在数组中查找重复对象的有效方法

javascript - 一对一过滤JavaScript数组添加/删除条件

graphics - Haskell 像素绘图库 Linux

java - 我无法在 Android Studio 上打开虚拟设备

java - Base64 编码对文件名安全吗?

C# 数组列表到数组数组

java - 如何在Java中旋转图形

java打印 - 边框的设置大小

java - 将 wav 文件切割成片段