📜  Java中的图像处理——读写

📅  最后修改于: 2022-05-13 01:55:12.606000             🧑  作者: Mango

Java中的图像处理——读写

Java为Java中的图像实现了一种称为BufferedImage的特定类型的对象。可以从几种不同的图像类型(即 BMP、HEIC 等)中读取 BufferedImage。并非所有这些都由 ImageIO 本身提供支持,但有一些插件可以扩展 ImageIO 和其他库,例如 Apache Imaging 和 JDeli。

在Java本身中,各种图像类型的所有复杂性都是隐藏的,我们只处理 BufferedImage。 Java提供对图像像素和颜色信息的即时访问,并允许转换和图像处理。

执行读写操作所需的

1. Java.io.File:要读写图像文件,必须导入File类。此类通常表示文件和目录路径名。

2. Java.io.IOException:为了处理错误,我们使用了IOException类。

3. Java.awt.image.BufferedImage:为了保存图像,我们创建了BufferedImage对象;我们使用 BufferedImage 类。此对象用于在 RAM 中存储图像。

4. javax.imageio.ImageIO:为了执行图像读写操作,我们将导入ImageIO类。此类具有读取和写入图像的静态方法。

Java
// Java program to demonstrate read and write of image
  
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
  
public class MyImage {
    public static void main(String args[])
        throws IOException
    {
        // width of the image
        int width = 963;
  
        // height of the image
        int height = 640;
  
        // For storing image in RAM
        BufferedImage image = null;
  
        // READ IMAGE
        try {
            File input_file = new File(
                "C:/Users/hp/Desktop/Image Processing in Java/gfg-logo.png");
  
            // image file path create an object of
            // BufferedImage type and pass as parameter the
            // width,  height and image int
            // type. TYPE_INT_ARGB means that we are
            // representing the Alpha , Red, Green and Blue
            // component of the image pixel using 8 bit
            // integer value.
  
            image = new BufferedImage(
                width, height, BufferedImage.TYPE_INT_ARGB);
  
            // Reading input file
            image = ImageIO.read(input_file);
  
            System.out.println("Reading complete.");
        }
        catch (IOException e) {
            System.out.println("Error: " + e);
        }
  
        // WRITE IMAGE
        try {
            // Output file path
            File output_file = new File(
                "C:/Users/hp/Desktop/Image Processing in Java/gfg.png");
  
            // Writing to file taking type and path as
            ImageIO.write(image, "png", output_file);
  
            System.out.println("Writing complete.");
        }
        catch (IOException e) {
            System.out.println("Error: " + e);
        }
    } // main() ends here
} // class ends here


输出 -