Để tạo ảnh phản chiếu
-
Đọc hình ảnh được yêu cầu bằng phương thức ImageIO.read ().
-
Lấy chiều cao và chiều rộng của hình ảnh.
-
Tạo một hình ảnh trống trong bộ đệm để lưu trữ kết quả
-
Sử dụng các vòng lặp for lồng nhau đi qua từng pixel trong hình ảnh.
-
Lặp lại chiều rộng của hình ảnh từ phải sang trái.
-
Nhận giá trị pixel bằng phương thức getRGB ().
-
Đặt các giá trị pixel cho đối tượng hình ảnh kết quả bằng phương thức setRGB (), bằng cách thay thế các giá trị chiều rộng mới.
Ví dụ
import java.io.File; import java.io.IOException; import java.awt.image.BufferedImage; import javax.imageio.ImageIO; public class MirrorImage { public static void main(String args[])throws IOException { //Reading the image File file= new File("D:\\Images\\tree.jpg"); BufferedImage img = ImageIO.read(file); //Getting the height and with of the read image. int height = img.getHeight(); int width = img.getWidth(); //Creating Buffered Image to store the output BufferedImage res = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); for(int j = 0; j < height; j++){ for(int i = 0, w = width - 1; i < width; i++, w--){ int p = img.getRGB(i, j); //set mirror image pixel value - both left and right res.setRGB(w, j, p); } } //Saving the modified image file = new File("D:\\Images\\mirror_image.jpg"); ImageIO.write(res, "jpg", file); System.out.println("Done..."); } }
Đầu vào
Đầu ra