【译】Java官方文档:Java Image I/O API 指南3:编写Image I/O 应用

第三章 编写 Image I/O 应用

3.1 读写图片

javax.imageio.ImageIO类提供了一系列方便的执行最简图像I/O操作的静态方法。
从标准的格式(GIF、PNG或JPEG)中读取图片的示例如下:

File f = new File("c:\images\myimage.gif");
BufferedImage bi = ImageIO.read(f);

图片的格式将会由API基于文件内容自动识别出来。大部分图片文件在它们的前几个字节都包含有一种“魔数(Magic Number)”,它可以用来分辨文件的格式。对于没有魔数的图像格式,自动识别可能就派不上用场了,这时候就会需要一些额外专用的应用程序代码。
其他的格式则可能需要安装包含了相应插件的Jar包;这一部分的详细信息在下一章。在安装了一个插件后,对应的新型格式应该在程序代码没有任何改动的前提下自动被支持。
调用ImageIO.getReaderFormatNames方法可以得到所有支持被读取的格式集合。该方法返回一个包含所有可用格式信息的String类型的数组,比如“gif”和“png”等。
将图片按被支持的格式写入文件同样很简单:

BufferedImage bi;
File f = new File("c:\images\myimage.png");
ImageIO.write(im, "png", f);

被支持写入的格式列表可以通过调用ImageIO.getWriterFormatNames方法来获取到。

3.2 进阶

上文提到的方法对于简单的应用来说足够了。然而,Image I/O API 对编写复杂应用程序提供了更加强大的功能。为了使用本API的高阶功能,应用程序可能需要直接使用API中ImageReaderImageWriter这些部分。

你可能感兴趣的:(【译】Java官方文档:Java Image I/O API 指南3:编写Image I/O 应用)