Classe Java BufferedImage
La BufferedImage
classe Java est une sous-classe de la classe Image. Il est utilisé pour gérer et manipuler les données d'image. A BufferedImage
est constitué de ColorModel de données d'image. Tous les BufferedImage
objets 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 |
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 |
5 |
getGraphics() Cette méthode renvoie un Graphics2D, conserve la compatibilité descendante. |
6 |
getHeight() Il renvoie la hauteur du |
sept |
getMinX() Il renvoie la coordonnée x minimale de ceci |
8 |
getMinY() Il renvoie la coordonnée y minimale de ceci |
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 -