- java.lang.Object
-
- javax.imageio.spi.IIOServiceProvider
-
- javax.imageio.spi.ImageReaderWriterSpi
-
- All Implemented Interfaces:
-
RegisterableService
- 已知直接子类:
-
ImageReaderSpi,ImageWriterSpi
public abstract class ImageReaderWriterSpi extends IIOServiceProvider
一个包含实例变量的超类和ImageReaderSpi和ImageWriterSpi共同的方法。- 另请参见:
-
IIORegistry,ImageReaderSpi,ImageWriterSpi
-
-
Field Summary
Fields Modifier and Type Field 描述 protected String[]extraImageMetadataFormatClassNamesString的数组,包含该插件支持的任何其他图像元数据格式的类名,最初为null。protected String[]extraImageMetadataFormatNamesString的数组,包含该插件支持的任何其他图像元数据格式的名称,最初为null。protected String[]extraStreamMetadataFormatClassNamesString的数组,包含此插件支持的任何其他流元数据格式的类名,最初为null。protected String[]extraStreamMetadataFormatNamesString的数组,包含该插件支持的任何其他流元数据格式的名称,最初为null。protected String[]MIMETypes要从getMIMETypes返回的字符串数组,最初为null。protected String[]names要从getFormatNames返回的字符串数组,最初为null。protected StringnativeImageMetadataFormatClassNameAString其中包含此插件支持的本机流元数据格式的类名,最初为null。protected StringnativeImageMetadataFormatNameAString包含此插件支持的本机流元数据格式的名称,最初为null。protected StringnativeStreamMetadataFormatClassNameAString其中包含此插件支持的本机流元数据格式的类名,最初为null。protected StringnativeStreamMetadataFormatNameAString其中包含此插件支持的本机流元数据格式的名称,最初为null。protected StringpluginClassNameAString包含相关插件类的名称,最初为null。protected String[]suffixes要从getFileSuffixes返回的字符串数组,最初为null。protected booleansupportsStandardImageMetadataFormat一个布尔值,表示此插件是否支持图像元数据的标准元数据格式,最初为false。protected booleansupportsStandardStreamMetadataFormat一个布尔值,表示此插件是否支持流元数据的标准元数据格式,最初为false。-
Fields inherited from class javax.imageio.spi.IIOServiceProvider
vendorName, version
-
-
构造方法摘要
构造方法 Constructor 描述 ImageReaderWriterSpi()构造一个空白ImageReaderWriterSpi。ImageReaderWriterSpi(String vendorName, String version, String[] names, String[] suffixes, String[] MIMETypes, String pluginClassName, boolean supportsStandardStreamMetadataFormat, String nativeStreamMetadataFormatName, String nativeStreamMetadataFormatClassName, String[] extraStreamMetadataFormatNames, String[] extraStreamMetadataFormatClassNames, boolean supportsStandardImageMetadataFormat, String nativeImageMetadataFormatName, String nativeImageMetadataFormatClassName, String[] extraImageMetadataFormatNames, String[] extraImageMetadataFormatClassNames)构造一个给定值的一个ImageReaderWriterSpi。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 String[]getExtraImageMetadataFormatNames()返回一个包含Strings的数组,String包含由此插件生成或使用的图像元数据对象上的getAsTree和setFromTree方法识别的其他文档格式(本机和标准格式)。String[]getExtraStreamMetadataFormatNames()返回一个包含Strings的数组,String包含由此插件生成或使用的流元数据对象上的getAsTree和setFromTree方法识别的本机和标准格式以外的其他文档格式的名称。String[]getFileSuffixes()返回一个包含Strings的数组,String包含与此服务提供商相关联的ImageReader或ImageWriter实现通常可用的格式相关联的文件后缀列表。String[]getFormatNames()返回String的数组,String包含与此服务提供商相关联的ImageReader或ImageWriter实现通常可用的格式的可读取名称。IIOMetadataFormatgetImageMetadataFormat(String formatName)返回一个IIOMetadataFormat对象描述给定的图像的元数据格式,或null如果没有可用的描述。String[]getMIMETypes()返回一个包含String的数组,String包含与此服务提供商关联的ImageReader或ImageWriter实现通常可用的格式相关联的MIME类型列表。StringgetNativeImageMetadataFormatName()返回此插件的“本机”图像元数据格式的名称,通常允许以由该插件处理的格式存储的图像元数据的无损编码和传输。StringgetNativeStreamMetadataFormatName()返回此插件的“本机”流元数据格式的名称,通常允许以该插件处理的格式存储的流元数据进行无损编码和传输。StringgetPluginClassName()返回与该服务提供商关联的ImageReader或ImageWriter插件的完全限定类名。IIOMetadataFormatgetStreamMetadataFormat(String formatName)返回一个IIOMetadataFormat对象描述给定的流元数据格式,或null如果没有可用的描述。booleanisStandardImageMetadataFormatSupported()返回true如果标准元数据格式是由所述识别的文档格式中getAsTree种setFromTree上产生或通过此插件消耗的图像元数据对象的方法。booleanisStandardStreamMetadataFormatSupported()返回true如果标准元数据格式是由所述识别的文档格式中getAsTree种setFromTree上产生或通过此插件消耗的流元数据对象的方法。-
Methods inherited from class javax.imageio.spi.IIOServiceProvider
getDescription, getVendorName, getVersion, onDeregistration, onRegistration
-
-
-
-
字段详细信息
-
names
protected String[] names
要从getFormatNames返回的字符串数组,最初为null。 构造函数应该将其设置为非null值。
-
suffixes
protected String[] suffixes
要从getFileSuffixes返回的字符串数组,最初为null。
-
MIMETypes
protected String[] MIMETypes
要从getMIMETypes返回的字符串数组,最初为null。
-
pluginClassName
protected String pluginClassName
AString包含相关插件类的名称,最初为null。
-
supportsStandardStreamMetadataFormat
protected boolean supportsStandardStreamMetadataFormat
一个布尔值,指示此插件是否支持流元数据的标准元数据格式,最初为false。
-
nativeStreamMetadataFormatName
protected String nativeStreamMetadataFormatName
AString包含此插件支持的本机流元数据格式的名称,最初为null。
-
nativeStreamMetadataFormatClassName
protected String nativeStreamMetadataFormatClassName
AString其中包含此插件支持的本机流元数据格式的类名,最初为null。
-
extraStreamMetadataFormatNames
protected String[] extraStreamMetadataFormatNames
包含String的数组,String包含此插件支持的任何其他流元数据格式的名称,最初为null。
-
extraStreamMetadataFormatClassNames
protected String[] extraStreamMetadataFormatClassNames
String的数组包含该插件支持的任何其他流元数据格式的类名,最初为null。
-
supportsStandardImageMetadataFormat
protected boolean supportsStandardImageMetadataFormat
一个布尔值,表示该插件是否支持图像元数据的标准元数据格式,最初为false。
-
nativeImageMetadataFormatName
protected String nativeImageMetadataFormatName
AString包含此插件支持的本地流元数据格式的名称,最初为null。
-
nativeImageMetadataFormatClassName
protected String nativeImageMetadataFormatClassName
AString其中包含此插件支持的本机流元数据格式的类名,最初为null。
-
extraImageMetadataFormatNames
protected String[] extraImageMetadataFormatNames
String的数组包含该插件支持的任何其他图像元数据格式的名称,最初为null。
-
extraImageMetadataFormatClassNames
protected String[] extraImageMetadataFormatClassNames
String的数组包含该插件支持的任何其他图像元数据格式的类名,最初为null。
-
-
构造方法详细信息
-
ImageReaderWriterSpi
public ImageReaderWriterSpi(String vendorName, String version, String[] names, String[] suffixes, String[] MIMETypes, String pluginClassName, boolean supportsStandardStreamMetadataFormat, String nativeStreamMetadataFormatName, String nativeStreamMetadataFormatClassName, String[] extraStreamMetadataFormatNames, String[] extraStreamMetadataFormatClassNames, boolean supportsStandardImageMetadataFormat, String nativeImageMetadataFormatName, String nativeImageMetadataFormatClassName, String[] extraImageMetadataFormatNames, String[] extraImageMetadataFormatClassNames)
构造一个具有给定值的值的ImageReaderWriterSpi。- 参数
-
vendorName- 供应商名称,非nullString。 -
version- 版本标识符,非nullString。 -
names- 表示格式名称的String的非null数组。 必须至少有一个条目。 -
suffixes- 表示公共文件后缀的Strings的数组。 如果未定义任何后缀,则应提供null。 长度为0的数组将被归一化为null。 -
MIMETypes- 表示格式的MIME类型的String的数组。 如果未定义MIME类型,则应提供null。 长度为0的数组将被归一化为null。 -
pluginClassName- 相关联的ImageReader或ImageWriter类的完全限定名称,作为非null String。 -
supportsStandardStreamMetadataFormat- 表示流元数据对象是否可以使用由标准元数据格式描述的树的boolean。 -
nativeStreamMetadataFormatName- aString或null,将从getNativeStreamMetadataFormatName返回。 -
nativeStreamMetadataFormatClassName- aString或null,用于实例化从getNativeStreamMetadataFormat返回的元数据格式对象。 -
extraStreamMetadataFormatNames- 要从getExtraStreamMetadataFormatNames返回的Strings或null的数组。 长度为0的数组被归一化为null。 -
extraStreamMetadataFormatClassNames- 用于实例化从getStreamMetadataFormat返回的元数据格式对象的String或null的数组。 长度为0的数组被归一化为null。 -
supportsStandardImageMetadataFormat- 表示图像元数据对象是否可以使用由标准元数据格式描述的树的boolean。 -
nativeImageMetadataFormatName- aString或null,由getNativeImageMetadataFormatName。 -
nativeImageMetadataFormatClassName- aString或null,用于实例化从getNativeImageMetadataFormat返回的元数据格式对象。 -
extraImageMetadataFormatNames-的阵列String从返回小号getExtraImageMetadataFormatNames。 长度为0的数组被归一化为null。 -
extraImageMetadataFormatClassNames- 用于实例化要从getImageMetadataFormat返回的元数据格式对象的Strings或null的数组。 长度为0的数组被归一化为null。 - 异常
-
IllegalArgumentException- 如果vendorName是null。 -
IllegalArgumentException- 如果version是null。 -
IllegalArgumentException- 如果names为null或长度为0。 -
IllegalArgumentException- 如果pluginClassName是null。
-
ImageReaderWriterSpi
public ImageReaderWriterSpi()
构造一个空白ImageReaderWriterSpi。 初始化实例变量和/或覆盖方法实现的子类是为了提供所有方法的工作版本。
-
-
方法详细信息
-
getFormatNames
public String[] getFormatNames()
返回String的数组,String包含与此服务提供商相关联的ImageReader或ImageWriter实现通常可用的格式的可读取名称。 例如,单个ImageReader可能能够处理PBM和PNM文件。- 结果
-
非
null阵列的StringS或长度至少为1,包含与此读取器或写入器相关联的非正式格式名称。
-
getFileSuffixes
public String[] getFileSuffixes()
返回一个包含Strings的数组,String包含与此服务提供商关联的ImageReader或ImageWriter实现通常可用的格式相关联的文件后缀列表。 例如,单个ImageReader可能能够处理具有'.pbm'和'.pnm'后缀的文件,或'.jpg'和'.jpeg'后缀。 如果没有已知的文件后缀,将返回null。返回特定后缀不能保证具有该后缀的文件可以被处理; 它仅表示可能值得尝试使用该服务提供商对这样的文件进行解码或编码。
- 结果
-
String的数组或长度至少为1的数组,其中包含与该读写器相关联的公用文件后缀,或null。
-
getMIMETypes
public String[] getMIMETypes()
返回一个包含String的数组,String包含与此服务提供商关联的ImageReader或ImageWriter实现通常可用的格式相关联的MIME类型列表。理想情况下,为了描述特定的格式,只需要一个MIME类型。 然而,由于几个原因,有必要将每个服务提供商的类型列表关联起来。 首先,许多常见的图像文件格式不具有标准MIME类型,因此将需要常用的非官方名称列表,例如
image/x-pbm和image/x-portable-bitmap。 某些文件格式具有官方MIME类型,但有时可以使用其以前的非官方名称来引用,例如image/x-png而不是官方的image/png。 最后,单个服务提供商可能能够从MIME的角度解析多个不同类型,例如image/x-xbitmap和image/x-xpixmap。返回特定的MIME类型并不能保证声称是该类型的文件可以被处理; 它仅表示可能值得尝试使用该服务提供商对这样的文件进行解码或编码。
- 结果
-
String的数组或长度至少包含与此读者或作者相关联的MIME类型的数组,或null。
-
getPluginClassName
public String getPluginClassName()
返回与此服务提供商关联的ImageReader或ImageWriter插件的完全限定类名。- 结果
-
该类名称,作为非
nullString。
-
isStandardStreamMetadataFormatSupported
public boolean isStandardStreamMetadataFormatSupported()
返回true如果标准元数据格式是由所述识别的文档格式中getAsTree种setFromTree上产生或通过此插件消耗的流元数据对象的方法。- 结果
-
true如果流元数据支持标准格式。
-
getNativeStreamMetadataFormatName
public String getNativeStreamMetadataFormatName()
返回此插件的“本机”流元数据格式的名称,通常允许以该插件处理的格式存储的流元数据进行无损编码和传输。 如果不支持此格式,将返回null。默认实现返回
nativeStreamMetadataFormatName实例变量,通常由构造函数设置。- 结果
-
本机流元数据格式的名称,或
null。
-
getExtraStreamMetadataFormatNames
public String[] getExtraStreamMetadataFormatNames()
返回一个包含String的数组,String包含由此插件生成或使用的流元数据对象上的getAsTree和setFromTree方法识别的本机和标准格式以外的其他文档格式的名称。如果插件不处理元数据,则应返回null。
这些格式可能会根据读取或写入的特定图像而有所不同; 此方法应指出插件在任何情况下支持的所有其他格式。
默认实现返回
extraStreamMetadataFormatNames实例变量的克隆,通常由构造函数设置。- 结果
-
一个
Strings的数组,或null。 - 另请参见:
-
IIOMetadata.getMetadataFormatNames(),getExtraImageMetadataFormatNames(),getNativeStreamMetadataFormatName()
-
isStandardImageMetadataFormatSupported
public boolean isStandardImageMetadataFormatSupported()
返回true如果标准元数据格式是由所述识别的文档格式中getAsTree种setFromTree上产生或通过此插件消耗的图像元数据对象的方法。- 结果
-
true如果图像元数据支持标准格式。
-
getNativeImageMetadataFormatName
public String getNativeImageMetadataFormatName()
返回此插件的“本机”图像元数据格式的名称,通常允许以由该插件处理的格式存储的图像元数据的无损编码和传输。 如果不支持此格式,将返回null。默认实现返回
nativeImageMetadataFormatName实例变量,通常由构造函数设置。- 结果
-
原生图像元数据格式的名称,或
null。 - 另请参见:
-
getExtraImageMetadataFormatNames()
-
getExtraImageMetadataFormatNames
public String[] getExtraImageMetadataFormatNames()
返回一个包含Strings的数组,String包含由此插件生成或使用的图像元数据对象上的getAsTree和setFromTree方法识别的其他文档格式(本机和标准格式)。如果插件不处理图像元数据,则应返回null。
这些格式可能会根据读取或写入的特定图像而有所不同; 此方法应指出插件在任何情况下支持的所有其他格式。
默认实现返回一个由构造函数设置的
extraImageMetadataFormatNames实例变量的克隆。- 结果
-
一个
Strings的数组,或null。 - 另请参见:
-
IIOMetadata.getMetadataFormatNames(),getExtraStreamMetadataFormatNames(),getNativeImageMetadataFormatName()
-
getStreamMetadataFormat
public IIOMetadataFormat getStreamMetadataFormat(String formatName)
返回一个IIOMetadataFormat对象描述给定的流元数据格式,或null如果没有可用的描述。 提供的名称必须是本地流元数据格式名称,标准元数据格式名称,或getExtraStreamMetadataFormatNames返回的其中一个。- 参数
-
formatName- 所需的流元数据格式。 - 结果
-
一个
IIOMetadataFormat对象。 - 异常
-
IllegalArgumentException- 如果formatName是null或不是支持的名称。
-
getImageMetadataFormat
public IIOMetadataFormat getImageMetadataFormat(String formatName)
返回一个IIOMetadataFormat对象描述给定的图像的元数据格式,或null如果没有可用的描述。 提供的名称必须是原始图像元数据格式名称,标准元数据格式名称,或getExtraImageMetadataFormatNames返回的其中一个。- 参数
-
formatName- 所需的图像元数据格式。 - 结果
-
一个
IIOMetadataFormat对象。 - 异常
-
IllegalArgumentException- 如果formatName是null或不是支持的名称。
-
-