Java'da görüntü işleme, Graphics
veya Graphics2D
bağlamları kullanılarak gerçekleştirilebilir.
JPEG ve PNG gibi görüntülerin yüklenmesi ImageIO
sınıfı kullanılarak gerçekleştirilebilir. ImageIO.read
yönteminin okunması ve görüntüyü Graphics2D
(veya Graphics
, üst sınıf) bağlamı aracılığıyla değiştirmek için kullanılabilen bir BufferedImage
değerini döndürmesi için bir File
alır.
Graphics2D
içeriği birçok resim çizimi ve değiştirme görevi gerçekleştirmek için kullanılabilir. Bilgi ve örnekler için, The Java Tutorials'un Trail: 2D Graphics çok iyi bir başlangıç olacaktır.
bir JPEG dosyası açın ve bazı çevreleri ve çizgiler çizmek hangi (denenmemiş) basitleştirilmiş bir örnek (istisnalar dikkate alınmaz) şudur:
// Open a JPEG file, load into a BufferedImage.
BufferedImage img = ImageIO.read(new File("image.jpg"));
// Obtain the Graphics2D context associated with the BufferedImage.
Graphics2D g = img.createGraphics();
// Draw on the BufferedImage via the graphics context.
int x = 10;
int y = 10;
int width = 10;
int height = 10;
g.drawOval(x, y, width, height);
g.drawLine(0, 0, 50, 50);
// Clean up -- dispose the graphics context that was created.
g.dispose();
bir JPEG görüntüsü açın ve bir çekecektir Yukarıdaki kod Oval ve bir çizgi.Bu işlemler görüntüyü değiştirmek için gerçekleştirildikten sonra BufferedImage
, Image
'un bir alt sınıfı olduğundan, diğer Image
gibi işlenebilir. Örneğin, BufferedImage
kullanarak ImageIcon
oluşturarak
bir JButton
veya JLabel
bir görüntüyü gömmek için:
JLabel l = new JLabel("Label with image", new ImageIcon(img));
JButton b = new JButton("Button with image", new ImageIcon(img));
JLabel
ve JButton
ikisi de bir ImageIcon
almak Kurucular, olabilir ki böylece Swing bileşenine görüntü eklemenin kolay bir yolu.