javax.imageio

接口
异常
java.lang.Object
  继承者 javax.imageio.ImageReader

public abstract class ImageReader
     
extends Object

用来解析和解码图像的抽象超类。在 Java Image I/O 框架的上下文中读入图像的类必须创建此类的子类。

ImageReader 对象通常由特定格式的服务提供者接口 (SPI) 类实例化。服务提供者类(例如 ImageReaderSpi 的实例)向 IIORegistry 注册,后者使用前者进行格式识别和表示可用格式 reader 和 writer。

在设置输入源时(使用 setInput 方法),可以将它标记为“只向前搜索”。此设置意味着包含在输入源中的图像将只按顺序读取,可能允许 reader 避免缓存包含与以前已经读取的图像关联的数据的那些输入部分。

另请参见:
ImageWriter, IIORegistry, ImageReaderSpi

字段摘要
protected  Locale[] availableLocales
          可以用来本地化警告消息的 Locale 组成的数组,如果不支持本地化,则为 null
protected  boolean ignoreMetadata
          如果当前输入源已经被 setInput 标记为允许忽略元数据,则为 true
protected  Object input
          由 setInput 设置并由 getInput 获取的 ImageInputStream 或其他 Object
protected  Locale locale
          用于本地化的当前 Locale,如果没有设置,则为 null
protected  int minIndex
          用来读取的最小有效索引,最初为 0。
protected  ImageReaderSpi originatingProvider
          实例化此对象的 ImageReaderSpi,如果其身份未知或不存在,则为 null
protected  List<IIOReadProgressListener> progressListeners
          当前已注册 IIOReadProgressListener 组成的 List,默认情况下初始化为 null,它与空 List 同义。
protected  boolean seekForwardOnly
          如果当前输入源已经被 setInput 标记为允许只向前搜索,则为 true
protected  List<IIOReadUpdateListener> updateListeners
          当前已注册 IIOReadUpdateListener 组成的 List,默认情况下初始化为 null,它与空 List 同义。
protected  List<IIOReadWarningListener> warningListeners
          当前已注册 IIOReadWarningListener 组成的 List,默认情况下初始化为 null,它与空 List 同义。
protected  List<Locale> warningLocales
          与每个当前已注册 IIOReadWarningListener 关联的 Locale 组成的 List,默认情况下初始化为 null,它与空 List 同义。
 
构造方法摘要
protected ImageReader(ImageReaderSpi originatingProvider)
          构造一个 ImageReader,并将其 originatingProvider 字段设置为所提供的值。
 
方法摘要
 void abort()
          请求中止当前所有读取操作。
protected  boolean abortRequested()
          如果从实例化 reader 或调用 clearAbortRequest 时起,已经请求了中止当前读取操作,则返回 true
 void addIIOReadProgressListener(IIOReadProgressListener listener)
          将 IIOReadProgressListener 添加到已注册的进度侦听器列表中。
 void addIIOReadUpdateListener(IIOReadUpdateListener listener)
          将 IIOReadUpdateListener 添加到已注册的更新侦听器列表中。
 void addIIOReadWarningListener(IIOReadWarningListener listener)
          将 IIOReadWarningListener 添加到已注册的警告侦听器的列表中。
 boolean canReadRaster()
          如果此插件支持只读取像素数据的 Raster,则返回 true
protected static void checkReadParamBandSettings(ImageReadParam param, int numSrcBands, int numDstBands)
          reader 可用来测试 ImageReadParam 的源和目标 band 设置的有效性的实用方法。
protected  void clearAbortRequest()
          清除任何以前的中止请求。
protected static void computeRegions(ImageReadParam param, int srcWidth, int srcHeight, BufferedImage image, Rectangle srcRegion, Rectangle destRegion)
          计算感兴趣的源区域和目标区域,将源图像的宽度和高度、可选目标图像和可选 ImageReadParam 都考虑在内。
 void dispose()
          允许释放此对象占用的所有资源。
 float getAspectRatio(int imageIndex)
          以 float 的形式返回给定图像的高宽比(即宽度除以高度)。
 Locale[] getAvailableLocales()
          返回可用来初始化警告侦听器和压缩设置值的 Locale 所组成的数组。
 ImageReadParam getDefaultReadParam()
          返回一个适合此格式的默认 ImageReadParam 对象。
protected static BufferedImage getDestination(ImageReadParam param, Iterator<ImageTypeSpecifier> imageTypes, int width, int height)
          返回应该在其中写入解码的像素数据的 BufferedImage
 String getFormatName()
          返回一个标识输入源格式的 String
abstract  int getHeight(int imageIndex)
          返回输入源中的给定图像的高度,以像素为单位。
abstract  IIOMetadata getImageMetadata(int imageIndex)
          返回包含与给定图像关联的元数据的 IIOMetadata 对象,如果 reader 不支持读取元数据、被设置为忽略元数据,或者没有元数据可用,则返回 null
 IIOMetadata getImageMetadata(int imageIndex, String formatName, Set<String> nodeNames)
          返回表示与给定图像关联的元数据的 IIOMetadata 对象,如果 reader 不支持读取元数据或者没有元数据可用,则返回 null
abstract  Iterator<ImageTypeSpecifier> getImageTypes(int imageIndex)
          以 ImageTypeSpecifier 形式返回包含可能的图像类型的 Iterator,给定图像可能被解码成这些类型。
 Object getInput()
          返回以前设置为输入源的 ImageInputStream 或其他 Object
 Locale getLocale()
          返回当前设置的 Locale,如果没有设置 Locale,则返回 null
 int getMinIndex()
          返回用于读取图像、缩略图或图像元数据的最低有效索引。
abstract  int getNumImages(boolean allowSearch)
          返回当前输入源中可用的图像数,不包括缩略图。
 int getNumThumbnails(int imageIndex)
          返回与给定图像关联的缩略图预览图像的数量。
 ImageReaderSpi getOriginatingProvider()
          返回传入构造方法的 ImageReaderSpi
 ImageTypeSpecifier getRawImageType(int imageIndex)
          返回一个 ImageTypeSpecifier,指示最能代表图像“原始”内部格式的 SampleModelColorModel
protected static Rectangle getSourceRegion(ImageReadParam param, int srcWidth, int srcHeight)
          reader 可用来计算应该读取的源图像区域的一个实用方法,计算时考虑任何源区域,并在所提供的 ImageReadParam 中对偏移量设置进行二次取样。
abstract  IIOMetadata getStreamMetadata()
          返回一个 IIOMetadata 对象,它表示作为一个整体与输入源关联的元数据(即不与任何特定图像关联);如果 reader 不支持读取元数据、被设置为忽略元数据,或者没有元数据可用,则返回 null
 IIOMetadata getStreamMetadata(String formatName, Set<String> nodeNames)
          返回一个 IIOMetadata 对象,它表示作为一个整体与输入源关联的元数据(即不与任何特定图像关联)。
 int getThumbnailHeight(int imageIndex, int thumbnailIndex)
          返回通过索引 thumbnailIndex 指定的缩略图预览图像的高度,其与通过索引 ImageIndex 指定的图像关联。
 int getThumbnailWidth(int imageIndex, int thumbnailIndex)
          返回通过索引 thumbnailIndex 指定的缩略图预览图像的宽度,其与通过索引 ImageIndex 指定的图像关联。
 int getTileGridXOffset(int imageIndex)
          返回给定图像中 tile (0, 0) 的左上角的 X 坐标。
 int getTileGridYOffset(int imageIndex)
          返回给定图像中 tile (0, 0) 的左上角的 Y 坐标。
 int getTileHeight(int imageIndex)
          返回给定图像中 tile 的高度。
 int getTileWidth(int imageIndex)
          返回给定图像中 tile 的宽度。
abstract  int getWidth(int imageIndex)
          返回输入源中的给定图像的宽度,以像素为单位。
 boolean hasThumbnails(int imageIndex)
          如果给定图像具有与之关联的缩略图预览图像,则返回 true
 boolean isIgnoringMetadata()
          如果已经通过传递 true 作为 setInput 方法的 ignoreMetadata 参数将当前输入源标记为允许忽略元数据,则返回 true
 boolean isImageTiled(int imageIndex)
          如果图像被组织成 tile(即等大小的非重叠矩形),则返回 true
 boolean isRandomAccessEasy(int imageIndex)
          如果给定图像的存储格式不会给像素的随机访问带来内在妨碍,则返回 true
 boolean isSeekForwardOnly()
          如果已经通过传递 true 作为 setInput 方法的 seekForwardOnly 参数将当前输入源标记为只向前搜索,则返回 true
protected  void processImageComplete()
          通过调用所有已注册 IIOReadProgressListenerimageComplete 方法向其广播图像读取的完成。
protected  void processImageProgress(float percentageDone)
          通过调用所有已注册 IIOReadProgressListenerimageProgress 方法向其广播图像完成的当前百分比。
protected  void processImageStarted(int imageIndex)
          通过调用所有已注册 IIOReadProgressListenerimageStarted 方法向其广播图像读取起始处。
protected  void processImageUpdate(BufferedImage theImage, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands)
          通过调用所有已注册 IIOReadUpdateListenerimageUpdate 方法向其广播样本集合的更新。
protected  void processPassComplete(BufferedImage theImage)
          通过调用所有已注册 IIOReadUpdateListenerpassComplete 方法向其广播逐步传递的结束。
protected  void processPassStarted(BufferedImage theImage, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands)
          通过调用所有已注册 IIOReadUpdateListenerpassStarted 方法向其广播逐步传递的开始。
protected  void processReadAborted()
          通过调用所有已注册 IIOReadProgressListenerreadAborted 方法向其广播读取已经中止。
protected  void processSequenceComplete()
          通过调用所有已注册 IIOReadProgressListenersequenceComplete 方法向其广播图像读取序列的完成。
protected  void processSequenceStarted(int minIndex)
          通过调用所有已注册 IIOReadProgressListenersequenceStarted 方法向其广播图像读取序列的起始处。
protected  void processThumbnailComplete()
          通过调用所有已注册 IIOReadProgressListenerthumbnailComplete 方法向其广播缩略图读取的完成。
protected  void processThumbnailPassComplete(BufferedImage theThumbnail)
          通过调用所有已注册 IIOReadUpdateListenerthumbnailPassComplete 方法向其广播缩略图逐步传递的结束。
protected  void processThumbnailPassStarted(BufferedImage theThumbnail, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands)
          通过调用所有已注册 IIOReadUpdateListenerthumbnailPassStarted 方法向其广播缩略图逐步传递的开始。
protected  void processThumbnailProgress(float percentageDone)
          通过调用所有已注册 IIOReadProgressListenerthumbnailProgress 方法向其广播缩略图完成的当前百分比。
protected  void processThumbnailStarted(int imageIndex, int thumbnailIndex)
          通过调用所有已注册 IIOReadProgressListenerthumbnailStarted 方法向其广播缩略图读取的起始处。
protected  void processThumbnailUpdate(BufferedImage theThumbnail, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands)
          通过调用所有已注册 IIOReadUpdateListenerthumbnailUpdate 方法向其广播缩略图图像中样本集合的更新。
protected  void processWarningOccurred(String warning)
          通过调用所有已注册 IIOReadWarningListenerwarningOccurred 方法向其广播警告消息。
protected  void processWarningOccurred(String baseName, String keyword)
          通过使用取自 ResourceBundle 的字符串调用所有已注册 IIOReadWarningListenerwarningOccurred 方法向其广播本地化警告消息。
 BufferedImage read(int imageIndex)
          使用默认 ImageReadParam 读取通过索引 imageIndex 指定的图像,并将其作为一个完整的 BufferedImage 返回。
abstract  BufferedImage read(int imageIndex, ImageReadParam param)
          使用所提供的 ImageReadParam 读取通过索引 imageIndex 指定的对象,并将它作为一个完整的 BufferedImage 返回。
 IIOImage readAll(int imageIndex, ImageReadParam param)
          使用所提供的 ImageReadParam 读取通过索引 imageIndex 指定的图像,并返回包含图像、缩略图和相关图像元数据的 IIOImage
 Iterator<IIOImage> readAll(Iterator<? extends ImageReadParam> params)
          以 IIOImage 对象形式返回包含输入源中所有图像、缩略图和元数据的 Iterator,从 getMinIndex 给定的索引开始。
 RenderedImage readAsRenderedImage(int imageIndex, ImageReadParam param)
          返回一个 RenderedImage 对象,该对象包含通过索引 imageIndex 指定的图像的内容。
 boolean readerSupportsThumbnails()
          如果此 reader 所理解的图像格式支持与之关联的缩略图预览图像,则返回 true
 Raster readRaster(int imageIndex, ImageReadParam param)
          返回包含图像流中原始像素数据的新 Raster 对象,不应用任何颜色转换。
 BufferedImage readThumbnail(int imageIndex, int thumbnailIndex)
          以 BufferedImage 形式返回通过索引 thumbnailIndex 指定的缩略图预览图像,其与通过索引 ImageIndex 指定的图像关联。
 BufferedImage readTile(int imageIndex, int tileX, int tileY)
          读取由 tileXtileY 参数指示的 tile,并以 BufferedImage 形式返回。
 Raster readTileRaster(int imageIndex, int tileX, int tileY)
          返回包含 tile 中的原始像素数据的新 Raster 对象,不应用任何颜色转换。
 void removeAllIIOReadProgressListeners()
          移除所有当前已注册的 IIOReadProgressListener 对象。
 void removeAllIIOReadUpdateListeners()
          移除所有当前已注册的 IIOReadUpdateListener 对象。
 void removeAllIIOReadWarningListeners()
          移除所有当前已注册的 IIOReadWarningListener 对象。
 void removeIIOReadProgressListener(IIOReadProgressListener listener)
          从已注册的进度侦听器列表中移除 IIOReadProgressListener
 void removeIIOReadUpdateListener(IIOReadUpdateListener listener)
          从已注册的更新侦听器列表中移除 IIOReadUpdateListener
 void removeIIOReadWarningListener(IIOReadWarningListener listener)
          从已注册的错误侦听器列表中移除 IIOReadWarningListener
 void reset()
          将 ImageReader 恢复到其初始状态。
 void setInput(Object input)
          设置用于给定的 ImageInputStream 或其他 Object 的输入源。
 void setInput(Object input, boolean seekForwardOnly)
          设置用于给定的 ImageInputStream 或其他 Object 的输入源。
 void setInput(Object input, boolean seekForwardOnly, boolean ignoreMetadata)
          设置用于给定的 ImageInputStream 或其他 Object 的输入源。
 void setLocale(Locale locale)
          将此 ImageReader 的当前 Locale 设置为给定值。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

字段详细信息

originatingProvider

protected ImageReaderSpi originatingProvider
实例化此对象的 ImageReaderSpi,如果其身份未知或不存在,则为 null。默认情况下初始化为 null


input

protected Object input
setInput 设置并由 getInput 获取的 ImageInputStream 或其他 Object。默认情况下初始化为 null


seekForwardOnly

protected boolean seekForwardOnly
如果当前输入源已经被 setInput 标记为允许只向前搜索,则为 true。默认情况下,该值为 false

另请参见:
minIndex, setInput(java.lang.Object, boolean, boolean)

ignoreMetadata

protected boolean ignoreMetadata
如果当前输入源已经被 setInput 标记为允许忽略元数据,则为 true。默认情况下,该值为 false

另请参见:
setInput(java.lang.Object, boolean, boolean)

minIndex

protected int minIndex
用来读取的最小有效索引,最初为 0。如果 seekForwardOnlytrue ,各种方法在试图访问与拥有更低索引的图像关联的数据时将抛出 IndexOutOfBoundsException

另请参见:
seekForwardOnly, setInput(java.lang.Object, boolean, boolean)

availableLocales

protected Locale[] availableLocales
可以用来本地化警告消息的 Locale 组成的数组,如果不支持本地化,则为 null


locale

protected Locale locale
用于本地化的当前 Locale,如果没有设置,则为 null


warningListeners

protected List<IIOReadWarningListener> warningListeners
当前已注册 IIOReadWarningListener 组成的 List,默认情况下初始化为 null,它与空 List 同义。


warningLocales

protected List<Locale> warningLocales
与每个当前已注册 IIOReadWarningListener 关联的 Locale 组成的 List,默认情况下初始化为 null,它与空 List 同义。


progressListeners

protected List<IIOReadProgressListener> progressListeners
当前已注册 IIOReadProgressListener 组成的 List,默认情况下初始化为 null,它与空 List 同义。


updateListeners

protected List<IIOReadUpdateListener> updateListeners
当前已注册 IIOReadUpdateListener 组成的 List,默认情况下初始化为 null,它与空 List 同义。

构造方法详细信息

ImageReader

protected ImageReader(ImageReaderSpi originatingProvider)
构造一个 Imag