Classe Java BufferedImage

La BufferedImageclasse Java est une sous-classe de la classe Image. Il est utilisé pour gérer et manipuler les données d'image. A BufferedImageest constitué de ColorModel de données d'image. Tous les BufferedImageobjets ont une coordonnée dans le coin supérieur gauche de (0, 0).

Constructeurs

Cette classe prend en charge trois types de constructeurs.

Le premier constructeur construit un nouveau BufferedImage avec un ColorModel et un Raster spécifiés.

BufferedImage(ColorModel cm, WritableRaster raster, 
boolean isRasterPremultiplied, Hashtable<?,?> properties)

Le deuxième constructeur construit un BufferedImage de l'un des types d'image prédéfinis.

BufferedImage(int width, int height, int imageType)

Le troisième constructeur construit un BufferedImage de l'un des types d'image prédéfinis: TYPE_BYTE_BINARY ou TYPE_BYTE_INDEXED.

BufferedImage(int width, int height, int imageType, IndexColorModel cm)

Sr.Non Méthode et description
1

copyData(WritableRaster outRaster)

Il calcule une région rectangulaire arbitraire du BufferedImage et la copie dans un WritableRaster spécifié.

2

getColorModel()

Il renvoie l'objet de la classe ColorModel d'une image.

3

getData()

Il renvoie l'image comme une grande tuile.

4

getData(Rectangle rect)

Il calcule et renvoie une région arbitraire du BufferedImage.

5

getGraphics()

Cette méthode renvoie un Graphics2D, conserve la compatibilité descendante.

6

getHeight()

Il renvoie la hauteur du BufferedImage.

sept

getMinX()

Il renvoie la coordonnée x minimale de ceci BufferedImage.

8

getMinY()

Il renvoie la coordonnée y minimale de ceci BufferedImage.

9

getRGB(int x, int y)

Il renvoie un pixel entier dans le modèle de couleur RVB par défaut (TYPE_INT_ARGB) et dans l'espace colorimétrique sRGB par défaut.

dix

getType()

Il renvoie le type d'image.

Exemple

L'exemple suivant illustre l'utilisation de la BufferedImage classe java qui dessine du texte à l'écran à l'aide de Graphics Object -

import java.awt.Graphics;
import java.awt.Image;
import java.awt.image.BufferedImage;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class Test extends JPanel {

   public void paint(Graphics g) {
      Image img = createImageWithText();
      g.drawImage(img, 20,20,this);
   }

   private Image createImageWithText() {
      BufferedImage bufferedImage = new BufferedImage(200,200,BufferedImage.TYPE_INT_RGB);
      Graphics g = bufferedImage.getGraphics();

      g.drawString("www.tutorialspoint.com", 20,20);
      g.drawString("www.tutorialspoint.com", 20,40);
      g.drawString("www.tutorialspoint.com", 20,60);
      g.drawString("www.tutorialspoint.com", 20,80);
      g.drawString("www.tutorialspoint.com", 20,100);
      
      return bufferedImage;
   }
   
   public static void main(String[] args) {
      JFrame frame = new JFrame();
      frame.getContentPane().add(new Test());

      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      frame.setSize(200, 200);
      frame.setVisible(true);
   }
}

Production

Lorsque vous exécutez le code donné, la sortie suivante est vue -