同じサイズの 3 つの 2D マトリックスがあります (200 行と 300 列としましょう)。各マトリックスは、3 つの「基本」色 (赤、緑、青) のいずれかの値を表します。マトリックスの値は 0 から 255 の間です。これらのマトリックスを組み合わせて、カラー イメージ (200 x 300 ピクセル) として表示します。Javaでどうすればできますか?
3072 次
1 に答える
3
まず、次のような値からColorを作成できます。
Color c = new Color(red, green, blue, alpha);
ご了承ください:
- 赤はMatrics1の値です
- 緑はMatrics2の値です
- 青はMatrics3の値です
次に、新しいイメージを作成します。
BufferedImage image = new BufferedImage(200/*Width*/, 300/*height*/, BufferedImage.TYPE_INT_ARGB);
次に、画像の値を次のように設定します。
image.setRGB(x, y, c.getRGB());
これは、この手順のコードです。試してみてください:
public class Main {
public static void main(String args[]) throws IOException {
int red[][] = new int[200][300];
int green[][] = new int[200][300];
int blue[][] = new int[200][300];
/////////////////set this matrices
BufferedImage image = new BufferedImage(200/*Width*/, 300/*height*/, BufferedImage.TYPE_INT_ARGB);
for (int i = 0; i < 200; i++) {
for (int j = 0; j < 300; j++) {
Color c = new Color(red[i][j], green[i][j], blue[i][j]);
image.setRGB(i, j, c.getRGB());
}
}
ImageIO.write(image, "jpg", new File("/////////////image path.jpg"));
}
}
于 2013-03-10T12:50:04.373 に答える