คลาส Java BufferedImage
BufferedImageคลาสJava เป็นคลาสย่อยของคลาส Image ใช้เพื่อจัดการและจัดการข้อมูลรูปภาพ A BufferedImageทำจาก ColorModel ของข้อมูลภาพ BufferedImageวัตถุทั้งหมดมีพิกัดมุมบนซ้ายเป็น (0, 0)
ตัวสร้าง
คลาสนี้รองรับคอนสตรัคเตอร์สามประเภท
ตัวสร้างแรกสร้างใหม่BufferedImageด้วย ColorModel และ Raster ที่ระบุ
BufferedImage(ColorModel cm, WritableRaster raster,
boolean isRasterPremultiplied, Hashtable<?,?> properties)
ตัวสร้างที่สองสร้างBufferedImageหนึ่งในประเภทรูปภาพที่กำหนดไว้ล่วงหน้า
BufferedImage(int width, int height, int imageType)
ตัวสร้างที่สามสร้างBufferedImageหนึ่งในประเภทรูปภาพที่กำหนดไว้ล่วงหน้า: TYPE_BYTE_BINARY หรือ TYPE_BYTE_INDEXED
BufferedImage(int width, int height, int imageType, IndexColorModel cm)
| ซีเนียร์ No | วิธีการและคำอธิบาย |
|---|---|
| 1 | copyData(WritableRaster outRaster) มันคำนวณพื้นที่สี่เหลี่ยมตามอำเภอใจของ |
| 2 | getColorModel() ส่งคืนอ็อบเจ็กต์ของคลาส ColorModel ของรูปภาพ |
| 3 | getData() จะคืนรูปเป็นกระเบื้องขนาดใหญ่หนึ่งแผ่น |
| 4 | getData(Rectangle rect) มันคำนวณและส่งคืนพื้นที่โดยพลการของ |
| 5 | getGraphics() วิธีนี้ส่งคืน Graphics2D โดยยังคงความเข้ากันได้แบบย้อนหลัง |
| 6 | getHeight() จะคืนค่าความสูงของ |
| 7 | getMinX() มันส่งกลับ x |
| 8 | getMinY() มันกลับ y |
| 9 | getRGB(int x, int y) จะส่งคืนพิกเซลจำนวนเต็มในโมเดลสี RGB เริ่มต้น (TYPE_INT_ARGB) และพื้นที่สี sRGB เริ่มต้น |
| 10 | getType() มันส่งกลับประเภทรูปภาพ |
ตัวอย่าง
ตัวอย่างต่อไปนี้แสดงให้เห็นถึงการใช้BufferedImageคลาสjava ที่วาดข้อความบนหน้าจอโดยใช้ 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);
}
}
เอาต์พุต
เมื่อคุณรันโค้ดที่กำหนดจะเห็นผลลัพธ์ต่อไปนี้ -