Erstellen ein Bitmap-Bild in Java
Die Bitmap ist ein Bilddateiformat, das Bilder als ein Array von Bits speichert, die auf eine bestimmte Weise organisiert sind, um das Bild zu erzeugen.
Dieser Artikel beschreibt, wie wir ein Bitmap-Bild in Java erstellen können.
Bitmap-Bild in Java
Java hat keine spezielle Bitmap-Klasse zur Darstellung von Bitmap-Bildern.
Stattdessen hat es eine BufferedImage
-Klasse. Diese Klasse ist eine Unterklasse der Klasse Image
und enthält ein Farbmodell und ein Raster von Bilddaten.
Sie können die Klasse BufferedImage
verwenden, um die Bilddaten als Pixel zu speichern. Sie können die Methoden get
und set
der Klasse aufrufen, um die Pixelwerte zu manipulieren, um das gewünschte Bild zu erhalten.
Arten von Bitmap-Bildern in Java
Das Java-Bitmap-Bild oder das Java BufferedImage
hat mehrere verschiedene Typen. Sie können die Flag-Variable, die den Bildtyp darstellt, im Konstruktor selbst festlegen.
Die Typen unterscheiden sich in der Farbgebung, und Sie können sogar ein Graustufenbild erzeugen. Um mehr über die Flags und Methoden der Klasse BufferedImage
zu erfahren, können Sie hier besuchen.
Verwenden Sie die Klasse BufferedImage
, um ein Bitmap-Bild in Java zu erstellen
Sie können ein Bitmap-Bild in Java mit der Klasse BufferedImage
und der Methode setRGB()
erstellen.
Es stellt uns einen Datenpuffer und verschiedene Methoden zur Verfügung, mit denen wir die Bilddaten manipulieren können. Um ein BufferedImage
zu erstellen, können wir den BufferedImage()
-Konstruktor verwenden.
Der Konstruktor BufferedImage()
nimmt die Bildbreite als erstes Eingabeargument, die Höhe des Bildes als zweites Eingabeargument und eine ganzzahlige Konstante, die den Bildtyp darstellt, als drittes Eingabeargument.
Die Methode setRGB()
setzt, wenn sie auf einem BufferedImage
aufgerufen wird, ein Pixel im BufferedImage
mit einem bestimmten RGB-Wert.
Die Methode setRGB()
nimmt die x-Koordinate des zu manipulierenden Pixels als erstes Eingabeargument, die y-Koordinate des Pixels als zweites Eingabeargument und einen ganzzahligen RGB-Wert als drittes Eingabeargument. In unserem Beispiel unten haben wir den roten RGB-Wert als drittes Eingabeargument verwendet.
Sehen wir uns den Code an, der ein Bitmap-Bild der Größe 10x10 erzeugt und es rot einfärbt.
import java.awt.Color;
import java.awt.image.BufferedImage;
public class ImageExample {
public static void main(String[] args) {
BufferedImage img = new BufferedImage(10, 10, BufferedImage.TYPE_4BYTE_ABGR);
img.setRGB(1, 1, Color.RED.getRGB());
System.out.println(img);
}
}
Ausgabe:
BufferedImage@50040f0c: type = 6 ColorModel: #pixelBits = 32 numComponents = 4 color space = java.awt.color.ICC_ColorSpace@7a4f0f29 transparency = 3 has alpha = true isAlphaPre = false ByteInterleavedRaster: width = 10 height = 10 #numDataElements 4 dataOff[0] = 3
Wir haben ein Bitmap-Bild in Java erstellt, das im obigen Beispiel in der Variablen img
gespeichert ist. Sie können jedes Pixel einfärben, indem Sie das Bild durchlaufen.
Und die auf der Konsole angezeigte Ausgabe sind die Metadaten des Bildes.
Wenn Sie das Bild sehen möchten, müssen Sie das Bild in einem Bildformat wie png
, jpg
usw. speichern. Sie können dem Bild auch die Farbe Ihrer Wahl zuweisen, indem Sie die RGB-Werte an die setRGB()
Methode.