模块  java.desktop

Package javax.imageio

Java Image I / O API的主要包。

可以使用ImageIO类的静态方法执行许多常见的图像I / O操作。

该软件包包含用于描述图像文件内容的基本类和接口,包括元数据和缩略图( IIOImage ); 用于控制图像读取处理( ImageReaderImageReadParam ,和ImageTypeSpecifier )和图像写入处理( ImageWriterImageWriteParam ); 用于执行格式之间的转码( ImageTranscoder )和报告错误( IIOException )。

javax.imageio的所有实现都提供以下标准图像格式插件:

Standard image format plug-ins Image format Reading Writing Notes Metadata BMP yes yes none BMP metadata format GIF yes yes GIF plug-in notes GIF metadata format JPEG yes yes none JPEG metadata format PNG yes yes none PNG metadata format TIFF yes yes TIFF plug-in notes TIFF metadata format WBMP yes yes none WBMP metadata format

标准插件说明

Standard plug-in for GIF image format

ImageIO的提供ImageReaderImageWriter插件为Graphics Interchange Format (GIF)的图像格式。 这些是“标准”GIF插件,意味着包含在JRE中的插件,与标准扩展插件或第三方插件中包含的插件不同。 以下注释和元数据规范适用于标准插件。

编写GIF图像

GIF图像编写器插件可保证无损写入图像,满足以下要求:
  • 波段数为1;
  • 每个样本的比特数不大于8;
  • 颜色分量的大小不大于8;

默认情况下,GIF编写器插件会创建版本“89a”图像。 通过在流元数据中显式设置版本,可以将其更改为“87a”(请参阅GIF Stream Metadata Format Specification )。

GIF编写器插件支持通过ImageWriter类中定义的标准序列编写方法创建动画GIF图像。

如果满足下列条件之一,则会将全局颜色表写入输出流:

  • 提供包含GlobalColorTable元素的流元数据;
  • 正在编写序列,并且为序列中的第一个图像提供包含LocalColorTable元素的图像元数据;
  • 未提供图像元数据或不包含LocalColorTable元素。

在第一种情况下,使用流元数据中的全局颜色表,在第二种情况下使用图像元数据中的局部颜色表,并且在第三种情况下,从(第一)图像的ColorModel或SampleModel创建全局颜色表。 。

仅当向编写器提供包含LocalColorTable元素的图像元数据时才将本地颜色表写入输出流,或者没有向编写器提供图像元数据,并且将从图像本身生成的本地颜色表不等于全局颜色表。

仅当向编写器提供包含GraphicControlExtension元素的图像元数据时,才将图形控件扩展块写入输出流,或者不提供图像元数据,并且从图像生成的本地颜色表需要透明索引。 应用程序,纯文本和注释扩展块仅在通过图像元数据提供给编写器时才会写入。

隔行扫描图像的写入可以通过所提供的ImageWriteParam实例的渐进模式来控制。 如果逐行模式为MODE_DISABLED则将写入非隔行扫描图像。 如果逐行扫描模式为MODE_DEFAULT则将写入隔行扫描图像。 如果渐进模式为MODE_COPY_FROM_METADATA ,则使用元数据设置(如果提供,否则将写入隔行扫描图像)。

GIF图像编写器插件支持以本机GIF流元数据格式javax_imageio_gif_stream_1.0或标准元数据格式javax_imageio_1.0从提供给写入器的元数据设置输出流元数据,并从本机GIF中提供给写入器的元数据设置输出图像元数据图像元数据格式javax_imageio_gif_image_1.0或标准元数据格式javax_imageio_1.0 标准元数据格式到GIF本机流和图像元数据格式的映射在表here中给出

从以下版本开始:
1.4