JavaTM 2 Platform
Standard Ed. 5.0

javax.imageio
クラス ImageReader

java.lang.Object
  上位を拡張 javax.imageio.ImageReader

public abstract class ImageReader
extends Object

イメージを解析して復号化する抽象スーパークラスです。このクラスは、Java Image I/O フレームワークのコンテキストで、イメージに読み取られるクラスによってサブクラス化します。

ImageReader オブジェクトは、通常、特定の形式のサービスプロバイダインタフェース (SPI) によってインスタンス化されます。ImageReaderSpi インスタンスなどのサービスプロバイダクラスは、それらのクラスのフォーマット認識と、使用可能なフォーマットリーダおよびライターの表示に使用する IIORegistry に登録されます。

入力ソースが setInput メソッドを使用して設定される場合、「順方向検索だけ」として指定されます。この設定は、以前に読み取られたイメージと関連付けられたデータを保持する入力部分のキャッシュを回避するために、入力ソースに保持されるイメージが順番に読み取られるだけであることを意味します。

関連項目:
ImageWriter, IIORegistry, ImageReaderSpi

フィールドの概要
protected  Locale[] availableLocales
          警告メッセージを地域対応するために使用する Locale の配列、または地域対応化がサポートされていない場合は null です。
protected  boolean ignoreMetadata
          現在の入力ソースが、setInput によってメタデータが無視されるように指定されている場合は true です。
protected  Object input
          ImageInputStream または setInput によって設定されたか、getInput によって取得されたその他の Object です。
protected  Locale locale
          地域対応化に使用する現在の Locale、または設定されていない場合は null です。
protected  int minIndex
          読み込み用の最小有効インデックスは、初期状態で 0 です。
protected  ImageReaderSpi originatingProvider
          このオブジェクトをインスタンス化する ImageReaderSpi、または識別情報が不明であるか存在しない場合は null です。
protected  List<IIOReadProgressListener> progressListeners
          現在登録されている各 IIOReadProgressListenerList です。
protected  boolean seekForwardOnly
          現在の入力ソースが、setInput による順方向検索だけが可能となるように指定されている場合は true です。
protected  List<IIOReadUpdateListener> updateListeners
          現在登録されている各 IIOReadUpdateListenerList です。
protected  List<IIOReadWarningListener> warningListeners
          現在登録されている IIOReadWarningListenerList です。
protected  List<Locale> warningLocales
          現在登録されている各 IIOReadWarningListener に関連付けられた LocaleList です。
 
コンストラクタの概要
protected ImageReader(ImageReaderSpi originatingProvider)
          ImageReader を構築し、originatingProvider フィールドを、指定された値に設定します。
 
メソッドの概要
 void abort()
          現在の読み込みオペレーションの中断を要求します。
protected  boolean abortRequested()
          現在の読み込みオペレーションを中断する要求が行われた場合、リーダがインスタンス化されるか、または 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)
          ImageReadParam のソースとデスティネーションバンドの設定の有効性を判定するために、リーダが使用するユーティリティメソッドです。
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 オブジェクトを返します。
 IIOMetadata getImageMetadata(int imageIndex, String formatName, Set<String> nodeNames)
          指定されたイメージに関連付けられたメタデータを表す IIOMetadata オブジェクトを返します。
abstract  Iterator<ImageTypeSpecifier> getImageTypes(int imageIndex)
          ImageTypeSpecifiers の形式で指定されたイメージが復号化されるイメージ型を含む Iterator を返します。
 Object getInput()
          ImageReaderSpi または以前に入力ソースとして設定された他の Object を返します。
 Locale getLocale()
          現在設定されている Locale、何も設定されていない場合は null を返します。
 int getMinIndex()
          イメージ、サムネール、またはイメージメタデータの読み込みに対して有効な、最小のインデックスを返します。
abstract  int getNumImages(boolean allowSearch)
          現在の入力ソースから、サムネールを除く使用可能なイメージの数を返します。
 int getNumThumbnails(int imageIndex)
          指定されたイメージに関連付けられたサムネールプレビューイメージの数を返します。
 ImageReaderSpi getOriginatingProvider()
          このコンストラクタに渡された ImageReaderSpi を返します。
 ImageTypeSpecifier getRawImageType(int imageIndex)
          イメージの raw 内部形式にもっとも近い形式を表す SampleModelColorModel を示して、ImageTypeSpecifier を返します。
protected static Rectangle getSourceRegion(ImageReadParam param, int srcWidth, int srcHeight)
          指定された ImageReadParam のソース領域とサブサンプリングの座標の設定を考慮して、リーダが読み取るソースイメージの領域を計算するために使用するユーティリティメソッドです。
abstract  IIOMetadata getStreamMetadata()
          入力ソースに全体として関連付けられた、つまり特定のイメージに関連付けられていないメタデータを表す IIOMetadata オブジェクトを返します。
 IIOMetadata getStreamMetadata(String formatName, Set<String> nodeNames)
          入力ソースに全体として関連付けられた、つまり特定のイメージに関連付けられていないメタデータを表す IIOMetadata オブジェクトを返します。
 int getThumbnailHeight(int imageIndex, int thumbnailIndex)
          thumbnailIndex によってインデックスを付けられたサムネールプレビューイメージの高さを返します。
 int getThumbnailWidth(int imageIndex, int thumbnailIndex)
          thumbnailIndex によってインデックスを付けられたサムネールプレビューイメージの幅を返します。
 int getTileGridXOffset(int imageIndex)
          指定されたイメージのタイル (0, 0) の左上隅の X 座標を返します。
 int getTileGridYOffset(int imageIndex)
          指定されたイメージのタイル (0, 0) の左上隅の Y 座標を返します。
 int getTileHeight(int imageIndex)
          指定されたイメージのタイルの高さを返します。
 int getTileWidth(int imageIndex)
          指定されたイメージのタイルの幅を返します。
abstract  int getWidth(int imageIndex)
          入力ソースの指定されたイメージの幅をピクセル単位で返します。
 boolean hasThumbnails(int imageIndex)
          指定されたイメージが、それに関連付けられたサムネールプレビューイメージを持つ場合、true を返します。
 boolean isIgnoringMetadata()
          現在の入力ソースが、setInput メソッドの ignoreMetadata 引数として true を渡すことにより、メタデータを無視できるように指定されている場合は true を返します。
 boolean isImageTiled(int imageIndex)
          イメージがタイル、つまりオーバーラップしない等しいサイズの矩形に組み入れられる場合は true を返します。
 boolean isRandomAccessEasy(int imageIndex)
          ピクセルへのランダムアクセスに関して、指定されたイメージの格納形式に固有の障害が何もない場合は true を返します。
 boolean isSeekForwardOnly()
          現在の入力ソースが、setInput メソッドの seekForwardOnly 引数として true を渡すことにより、順方向検索だけで実施と指定されている場合は true を返します。
protected  void processImageComplete()
          imageComplete メソッドの呼び出しによって、イメージ読み込みの完了を、登録されたすべての IIOReadProgressListener に通知します。
protected  void processImageProgress(float percentageDone)
          imageProgress メソッドの呼び出しによって、イメージ完成の現在の割合を、登録されたすべての IIOReadProgressListener に通知します。
protected  void processImageStarted(int imageIndex)
          imageStarted メソッドの呼び出しによって、イメージ読み込みの開始を、登録されたすべての IIOReadProgressListener に通知します。
protected  void processImageUpdate(BufferedImage theImage, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands)
          imageUpdate メソッドの呼び出しによって、サンプルのセットの更新を、登録されたすべての IIOReadUpdateListener に通知します。
protected  void processPassComplete(BufferedImage theImage)
          passComplete メソッドの呼び出しによって、プログレッシブパスの終了を、登録されたすべての IIOReadUpdateListener に通知します。
protected  void processPassStarted(BufferedImage theImage, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands)
          passStarted メソッドの呼び出しによって、プログレッシブパスの開始を、登録されたすべての IIOReadUpdateListener に通知します。
protected  void processReadAborted()
          readAborted メソッドの呼び出しによって、読み込みが中断されたことを、登録されたすべての IIOReadProgressListener に通知します。
protected  void processSequenceComplete()
          sequenceComplete メソッドの呼び出しによって、イメージ読み込みのシーケンスの完了を、登録されたすべての IIOReadProgressListener に通知します。
protected  void processSequenceStarted(int minIndex)
          sequenceStarted メソッドの呼び出しによって、イメージ読み込みのシーケンスの開始を、登録されたすべての IIOReadProgressListener に通知します。
protected  void processThumbnailComplete()
          thumbnailComplete メソッドの呼び出しによって、サムネール読み込みの完了を、登録されたすべての IIOReadProgressListener に通知します。
protected  void processThumbnailPassComplete(BufferedImage theThumbnail)
          thumbnailPassComplete メソッドの呼び出しによって、サムネールのプログレッシブパスの終了を、登録されたすべての IIOReadUpdateListener に通知します。
protected  void processThumbnailPassStarted(BufferedImage theThumbnail, int pass, int minPass, int maxPass, int minX, int minY, int periodX, int periodY, int[] bands)
          thumbnailPassStarted メソッドの呼び出しによって、サムネールのプログレッシブパスの開始を、登録されたすべての IIOReadUpdateListener に通知します。
protected  void processThumbnailProgress(float percentageDone)
          thumbnailProgress メソッドの呼び出しによって、サムネール完成の現在の割合を、登録されたすべての IIOReadProgressListener に通知します。
protected  void processThumbnailStarted(int imageIndex, int thumbnailIndex)
          thumbnailStarted メソッドの呼び出しによって、サムネール読み込みの開始を、登録されたすべての IIOReadProgressListener に通知します。
protected  void processThumbnailUpdate(BufferedImage theThumbnail, int minX, int minY, int width, int height, int periodX, int periodY, int[] bands)
          thumbnailUpdate メソッドの呼び出しによって、サムネールイメージのサンプルのセットの更新を、登録されたすべての IIOReadUpdateListener に通知します。
protected  void processWarningOccurred(String warning)
          warningOccurred メソッドの呼び出しによって、警告メッセージを、登録されたすべての IIOReadWarningListener に通知します。
protected  void processWarningOccurred(String baseName, String keyword)
          ResourceBundle から取得した文字列を持つ warningOccurred メソッドの呼び出しによって、地域対応された警告メッセージを、登録されたすべての IIOReadWarningListener に通知します。
 BufferedImage read(int imageIndex)
          imageIndex によってインデックスを付けられたイメージを読み込み、デフォルトの ImageReadParam を使用して、完全な BufferedImage として返します。
abstract  BufferedImage read(int imageIndex, ImageReadParam param)
          imageIndex によってインデックスを付けられたイメージを読み込み、指定された ImageReadParam を使用して、完全な BufferedImage として返します。
 IIOImage readAll(int imageIndex, ImageReadParam param)
          imageIndex によってインデックスを付けられたイメージを読み込み、指定された ImageReadParam を使用して、イメージ、サムネール、および関連するイメージのメタデータを保持する IIOImage を返します。
 Iterator<IIOImage> readAll(Iterator<? extends ImageReadParam> params)
          すべてのイメージ、サムネール、およびメタデータを保持し、getMinIndex によって指定されたインデックスで始まる Iterator を、IIOImage オブジェクトの形式で入力ソースから返します。
 RenderedImage readAsRenderedImage(int imageIndex, ImageReadParam param)
          imageIndex によってインデックスを付けられたイメージの内容を保持する RenderedImage オブジェクトを返します。
 boolean readerSupportsThumbnails()
          このリーダによって理解されるイメージ形式が、それに関連付けられたサムネールプレビューイメージをサポートする場合、true を返します。
 Raster readRaster(int imageIndex, ImageReadParam param)
          色変換を適用せずに、イメージストリームからのピクセルデータを保持する新しい Raster オブジェクトを返します。
 BufferedImage readThumbnail(int imageIndex, int thumbnailIndex)
          thumbnailIndex によってインデックスを付けられたサムネールプレビューイメージを返します。
 BufferedImage readTile(int imageIndex, int tileX, int tileY)
          tileX および tileY 引数によって指定され、BufferedImage として返されるタイルを読み込みます。
 Raster readTileRaster(int imageIndex, int tileX, int tileY)
          色変換を適用せずに、タイルからの raw ピクセルデータを保持する新しい 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
ImageInputStream または setInput によって設定されたか、getInput によって取得されたその他の 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
現在登録されている IIOReadWarningListenerList です。デフォルトでは null に初期化され、空の List と同じ意味になります。


warningLocales

protected List<Locale> warningLocales
現在登録されている各 IIOReadWarningListener に関連付けられた LocaleList です。デフォルトでは null に初期化され、空の List と同じ意味になります。


progressListeners

protected List<IIOReadProgressListener> progressListeners
現在登録されている各 IIOReadProgressListenerList です。デフォルトでは null に初期化され、空の List と同じ意味になります。


updateListeners

protected List<IIOReadUpdateListener> updateListeners
現在登録されている各 IIOReadUpdateListenerList です。デフォルトでは null に初期化され、空の List と同じ意味になります。

コンストラクタの詳細

ImageReader

protected ImageReader(ImageReaderSpi originatingProvider)
ImageReader を構築し、originatingProvider フィールドを、指定された値に設定します。

拡張機能を使用するサブクラスは、拡張オブジェクトを取得するために (ImageReaderSpi, Object) シグニチャーを持つコンストラクタを提供する必要があります。拡張オブジェクトが適切でない場合、IllegalArgumentException がスローされます。

パラメータ:
originatingProvider - このコンストラクタを呼び出す ImageReaderSpi または null
メソッドの詳細

getFormatName

public String getFormatName()
                     throws IOException
入力ソースの形式を識別する String を返します。

デフォルト実装は originatingProvider.getFormatNames()[0] を返します。発生元のサービスプロバイダを持たないか、異なるネーミングポリシーが必要な実装はこのメソッドをオーバーライドする必要があります。

戻り値:
String としての形式名
例外:
IOException - 入力ソースからの情報の読み込みエラーが発生した場合

getOriginatingProvider

public ImageReaderSpi getOriginatingProvider()
このコンストラクタに渡された ImageReaderSpi を返します。この値は null の場合があることに注意してください。

戻り値:
ImageReaderSpi または null
関連項目:
ImageReaderSpi

setInput

public void setInput(Object input,
                     boolean seekForwardOnly,
                     boolean ignoreMetadata)
指定された ImageInputStream または他の Object に使用するために入力ソースを設定します。入力ソースは、照会または読み込みメソッドを使用する前に設定します。inputnull の場合、現在設定されている入力ソースは削除されます。どの場合も、minIndex の値は 0 に初期化されます。

seekForwardOnly パラメータは、getMinIndex によって返された値が、イメージ、サムネール、またはイメージメタデータが読み取られるごとに増加するかどうかを制御します。seekForwardOnly が true のとき、read(index) の呼び出しは、index < this.minIndex の場合には IndexOutOfBoundsException をスローし、そうでない場合には minIndex の値を index に設定します。seekForwardOnlyfalse の場合、読み込みオペレーションにかかわらず minIndex の値は 0 のままになります。

true に設定されている場合、ignoreMetadata パラメータは、読み込み中に発生したメタデータをリーダが無視できるようにします。そのあとの getStreamMetadata および getImageMetadata メソッドの呼び出しは null を返し、readAll から返された IIOImagegetMetadata メソッドから null を返します。このパラメータの設定により、リーダはより効率的に作業できるようになります。リーダは、この設定を無効にして通常どおりメタデータを返すことができます。

サブクラスは、ヘッダ情報や部分的に復号化されたイメージデータなど、以前のストリームに基づくキャッシュ情報の削除に注意する必要があります。

ImageInputStream ではなく、一般的な Object を使用することは、取得デバイスまたはイメージ処理プロトコルと直接対話するリーダを意図しています。正当なクラスのセットは、リーダのサービスプロバイダの getInputTypes メソッドによって通知されます。ほとんどのリーダは、ImageInputStream.class だけを保持する単一要素の配列を返し、ImageInputStream だけを受け取ることを示します。

デフォルト実装は、originatingProvider.getInputTypes() によって返されるリストに対して input 引数を確認して、引数がリスト内の 1 つのクラスのインスタンスでない場合は失敗します。発生元のプロバイダが null に設定されている場合、入力が ImageInputStream である場合だけに受け取られます。

パラメータ:
input - ImageInputStream または今後、復号化で使用する他の Object
seekForwardOnly - true の場合、イメージとメタデータはこの入力ソースから昇順でだけ読み取られる
ignoreMetadata - true の場合、メタデータは読み込み中に無視される
例外:
IllegalArgumentException - input が発生元サービスプロバイダの getInputTypes メソッドによって返される 1 つのクラスのインスタンスではない場合、または ImageInputStream ではない場合
関連項目:
ImageInputStream, getInput(), ImageReaderSpi.getInputTypes()

setInput

public void setInput(Object input,
                     boolean seekForwardOnly)
指定された ImageInputStream または他の Object に使用するために入力ソースを設定します。入力ソースは、照会または読み込みメソッドを使用する前に設定します。inputnull の場合、現在設定されている入力ソースは削除されます。どの場合も、minIndex の値は 0 に初期化されます。

seekForwardOnly パラメータは、getMinIndex によって返された値が、イメージ、サムネール、またはイメージメタデータが読み取られるごとに増加するかどうかを制御します。seekForwardOnly が true のとき、read(index) の呼び出しは、index < this.minIndex の場合には IndexOutOfBoundsException をスローし、そうでない場合には minIndex の値を index に設定します。seekForwardOnlyfalse の場合、読み込みオペレーションにかかわらず minIndex の値は 0 のままになります。

このメソッドは setInput(input, seekForwardOnly, false) と同等です。

パラメータ:
input - ImageInputStream または今後、復号化で使用する他の Object
seekForwardOnly - true の場合、イメージとメタデータはこの入力ソースから昇順でだけ読み取られる
例外:
IllegalArgumentException - input が発生元サービスプロバイダの getInputTypes メソッドによって返される 1 つのクラスのインスタンスではない場合、または ImageInputStream ではない場合
関連項目:
getInput()

setInput

public void setInput(Object input)
指定された ImageInputStream または他の Object に使用するために入力ソースを設定します。入力ソースは、照会または読み込みメソッドを使用する前に設定します。inputnull の場合、現在設定されている入力ソースは削除されます。どの場合も、minIndex の値は 0 に初期化されます。

このメソッドは setInput(input, false, false) と同等です。

パラメータ:
input - ImageInputStream または今後、復号化で使用する他の Object
例外:
IllegalArgumentException - input が発生元サービスプロバイダの getInputTypes メソッドによって返される 1 つのクラスのインスタンスではない場合、または ImageInputStream ではない場合
関連項目:
getInput()

getInput

public Object getInput()
ImageReaderSpi または以前に入力ソースとして設定された他の Object を返します。入力ソースが設定されていない場合、null が返されます。

戻り値:
今後、復号化で使用される Object または null
関連項目:
ImageInputStream, setInput(java.lang.Object, boolean, boolean)

isSeekForwardOnly

public boolean isSeekForwardOnly()
現在の入力ソースが、setInput メソッドの seekForwardOnly 引数として true を渡すことにより、順方向検索だけで実施と指定されている場合は true を返します。

戻り値:
入力ソースが順方向検索だけの場合は true
関連項目:
setInput(java.lang.Object, boolean, boolean)

isIgnoringMetadata

public boolean isIgnoringMetadata()
現在の入力ソースが、setInput メソッドの ignoreMetadata 引数として true を渡すことにより、メタデータを無視できるように指定されている場合は true を返します。

戻り値:
メタデータが無視できる場合は true
関連項目:
setInput(java.lang.Object, boolean, boolean)

getMinIndex

public int getMinIndex()
イメージ、サムネール、またはイメージメタデータの読み込みに対して有効な、最小のインデックスを返します。seekForwardOnly()false の場合、この値は通常 0 のままとなり、ランダムアクセスが可能であることを示します。それ以外の場合、直前にアクセスされたインデックスの値を保持し、単調に増加します。

戻り値:
読み込み用の正当な最小インデックス

getAvailableLocales

public Locale[] getAvailableLocales()
警告リスナーと圧縮設定の地域対応化のために使用する Locale の配列を返します。戻り値 null は、地域対応化がサポートされていないことを示します。

デフォルト実装は、それが null 以外の場合は availableLocales インスタンス変数の複製を返し、null の場合は null を返します。

戻り値:
setLocale の引数として使用する Locale の配列、または null

setLocale

public void setLocale(Locale locale)
この ImageReader の現在の Locale を指定された値に設定します。値 null は、以前の設定を削除して、リーダが適切な方法で地域対応する必要があることを示します。

パラメータ:
locale - 目的の Locale または null
例外:
IllegalArgumentException - localenull ではないが、getAvailableLocales によって返された値の 1 つではない場合
関連項目:
getLocale()

getLocale

public Locale getLocale()
現在設定されている Locale、何も設定されていない場合は null を返します。

戻り値:
現在の Locale または null
関連項目:
setLocale(java.util.Locale)

getNumImages

public abstract int getNumImages(boolean allowSearch)
                          throws IOException
現在の入力ソースから、サムネールを除く使用可能なイメージの数を返します。

動画 GIF など一部のイメージ形式は、現在のストリームにあるイメージの数を指定しないことに注意してください。このため、イメージ数を確認するにはストリーム全体の走査とバッファリングを行うため、多くのメモリが必要になります。イメージが順番に処理される場合は、単純に read を呼び出して、IndexOutOfBoundsException がスローされることにより使用できるイメージがこれ以上ないことを示すまでインデックスを増加させる方が効率的です。allowSearch パラメータを false に設定して、徹底的な検索が不要であることを指示できます。この場合、戻り値は -1 となり、検索が必要であることを示します。入力が seekForwardOnly で指定され、true に設定されているとき、このメソッドは、allowSearchtrue に設定されていれば、IllegalStateException をスローします。

パラメータ:
allowSearch - true の場合、検索が必要なときでも真のイメージの数を返す。false の場合、リーダは検索を実行せずに -1 を返す
戻り値:
int としてのイメージの数、または allowSearchfalse の場合は -1 を返し、検索を要求する
例外:
IllegalStateException - 入力ソースが設定されていない場合、または入力ソースが true に設定された seekForwardOnly により指定されている場合
IOException - 入力ソースからの情報の読み込みエラーが発生した場合
関連項目:
setInput(java.lang.Object, boolean, boolean)

getWidth

public abstract int getWidth(int imageIndex)
                      throws IOException
入力ソースの指定されたイメージの幅をピクセル単位で返します。

ユーザ指定のサイズでイメージを描画できる場合、このメソッドはデフォルトの幅を返します。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
int としてのイメージの幅
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 入力ソースから幅の情報の読み込み中にエラーが発生した場合

getHeight

public abstract int getHeight(int imageIndex)
                       throws IOException
入力ソースの指定されたイメージの高さをピクセル単位で返します。

ユーザ指定のサイズでイメージを描画できる場合、このメソッドはデフォルトの高さを返します。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
int としてのイメージの高さ
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 入力ソースから高さの情報の読み込み中にエラーが発生した場合

isRandomAccessEasy

public boolean isRandomAccessEasy(int imageIndex)
                           throws IOException
ピクセルへのランダムアクセスに関して、指定されたイメージの格納形式に固有の障害が何もない場合は true を返します。JPEG などほとんどの圧縮形式の場合、対象の領域に加えて大規模なセクションを復号化する必要があるため、このメソッドは false を返します。

これはプログラムを効率的に行うためのヒントにすぎません。すべてのリーダは ImageReadParam に指定されているとおり、任意の領域を読み取る必要があります。

その場合でも、このメソッドから false を返す形式は、JPEG の Restart Marker のようなタイリングが可能であり、タイル上のランダムアクセスが非常に効率的になることに注意してください。詳細は isImageTiled を参照してください。

すべてのイメージが簡単なランダムアクセスのサポートを保証されているリーダ、または簡単なランダムアクセスのサポートが保証されないリーダは、イメージデータにアクセスせずに、それぞれ true または false を返します。このような場合は、入力ソースが設定されていなくても、あるいはイメージのインデックスが範囲外であっても、例外をスローする必要はありません。

デフォルト実装は false を返します。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
指定されたイメージの対象領域の読み込みが効率的になると考えられる場合は true
例外:
IllegalStateException - 入力ソースが戻り値の決定を要求される場合で、何も設定されていない場合
IndexOutOfBoundsException - 戻り値を決定するためにイメージにアクセスする必要があるが、指定されたインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getAspectRatio

public float getAspectRatio(int imageIndex)
                     throws IOException
指定されたイメージの縦横比 (つまり、幅を高さで割った値) を float で返します。本来サイズ変更が可能なイメージの場合、このメソッドは指定された適切な高さを持つ幅 (またはその逆の場合) を決定する方法を提供します。サイズ変更ができないイメージの場合、実際の幅と高さを使用します。

デフォルト実装は、単に (float)getWidth(imageIndex)/getHeight(imageIndex) を返します。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
指定されたイメージの縦横比を示す float
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getRawImageType

public ImageTypeSpecifier getRawImageType(int imageIndex)
                                   throws IOException
イメージの raw 内部形式にもっとも近い形式を表す SampleModelColorModel を示して、ImageTypeSpecifier を返します。たとえば、JPEG イメージの場合、通常、表示される前にイメージを RGB カラースペースに変換する場合でも、raw 型は YCbCr カラースペースを持ちます。また、返される値は getImageTypes によって返された値のリストに含まれる必要があります。

デフォルト実装は、getImageType が提供するリストから最初のエントリを返すだけです。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
ImageTypeSpecifier
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 入力ソースからの形式情報の読み込み中にエラーが発生した場合

getImageTypes

public abstract Iterator<ImageTypeSpecifier> getImageTypes(int imageIndex)
                                                    throws IOException
ImageTypeSpecifiers の形式で指定されたイメージが復号化されるイメージ型を含む Iterator を返します。少なくとも 1 つの有効なイメージ型が返されます。

反復子の最初の要素は、イメージをできるだけ小さく復号化するために、もっとも「自然な」型でなければなりません。たとえば、JPEG イメージの場合、イメージデータが内部的に YCbCr カラースペースに格納されている場合でも、最初のエントリは RGB イメージになります。

パラメータ:
imageIndex - retrieved されるイメージのインデックス
戻り値:
現在指定されているイメージを復号化するために、推奨されたイメージ型を表す、少なくとも 1 つの ImageTypeSpecifier を保持する Iterator
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 入力ソースからの形式情報の読み込み中にエラーが発生した場合
関連項目:
ImageReadParam.setDestination(BufferedImage), ImageReadParam.setDestinationType(ImageTypeSpecifier)

getDefaultReadParam

public ImageReadParam getDefaultReadParam()
この形式に対して適切なデフォルトの ImageReadParam オブジェクトを返します。すべてのサブクラスは、すべてのパラメータのデフォルト値のセットを定義して、この呼び出しでそれらを返さなければなりません。このメソッドは、入力ソースが設定される前に呼び出されます。

デフォルト実装は、ソースのスケーリングを実行できない新しい ImageReadParam オブジェクトを構築して返します。つまり、new ImageReadParam() を返します。

戻り値:
一連のデフォルトの設定を使用して、復号化プロセスを制御するために使用される ImageReadParam オブジェクト

getStreamMetadata

public abstract IIOMetadata getStreamMetadata()
                                       throws IOException
入力ソースに全体として関連付けられた、つまり特定のイメージに関連付けられていないメタデータを表す IIOMetadata オブジェクトを返します。または、リーダがメタデータを無視するよう設定され、メタデータの読み込みをサポートしていない場合、あるいはメタデータが使用できない場合は null を返します。

戻り値:
IIOMetadata オブジェクト、または null
例外:
IOException - 読み込み中にエラーが発生した場合

getStreamMetadata

public IIOMetadata getStreamMetadata(String formatName,
                                     Set<String> nodeNames)
                              throws IOException
入力ソースに全体として関連付けられた、つまり特定のイメージに関連付けられていないメタデータを表す IIOMetadata オブジェクトを返します。このようなデータが存在しない場合は null を返します。

結果のメタデータオブジェクトは formatName と名前の付けられた形式のドキュメントを返すだけです。返されるドキュメント内で、名前が nodeNames のメンバであるノードだけを返すよう要求されます。このようにして、リーダによって処理されたメタデータの量が実際に必要な情報に基づく最小の量になるよう管理されます。

formatName がサポートされたメタデータ形式の名前ではない場合、null を返します。

どのような場合でも、厳密に必要なオブジェクトよりも、有効なメタデータオブジェクトを返すことができます。形式名およびノード名は、リーダの作業負荷を削減するために使用するヒントに過ぎません。

デフォルト実装は、形式名がサポートされていることを確認してから getStreamMetadata() の呼び出しの結果を返すだけです。サポートされていない場合は null を返します。

パラメータ:
formatName - 返された IIOMetadata オブジェクトからドキュメントを取得するために使用するメタデータの形式名
nodeNames - 取得されたドキュメントに含まれるノード名を保持する Set
戻り値:
IIOMetadata オブジェクト、または null
例外:
IllegalArgumentException - formatNamenull の場合
IllegalArgumentException - nodeNamesnull の場合
IOException - 読み込み中にエラーが発生した場合

getImageMetadata

public abstract IIOMetadata getImageMetadata(int imageIndex)
                                      throws IOException
指定されたイメージに関連付けられたメタデータを保持する IIOMetadata オブジェクトを返します。または、リーダがメタデータを無視するよう設定され、メタデータの読み込みをサポートしていない場合、あるいはメタデータが使用できない場合は null を返します。

パラメータ:
imageIndex - メタデータの取得元イメージのインデックス
戻り値:
IIOMetadata オブジェクト、または null
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getImageMetadata

public IIOMetadata getImageMetadata(int imageIndex,
                                    String formatName,
                                    Set<String> nodeNames)
                             throws IOException
指定されたイメージに関連付けられたメタデータを表す IIOMetadata オブジェクトを返します。または、リーダがメタデータの読み込みをサポートしていない場合、あるいはメタデータを使用できない場合は null を返します。

結果のメタデータオブジェクトは formatName と名前の付けられた形式のドキュメントを返すだけです。返されるドキュメント内で、名前が nodeNames のメンバであるノードだけを返すよう要求されます。このようにして、リーダによって処理されたメタデータの量が実際に必要な情報に基づく最小の量になるよう管理されます。

formatName がサポートされたメタデータ形式の名前ではない場合、null を返します。

どのような場合でも、厳密に必要なオブジェクトよりも、有効なメタデータオブジェクトを返すことができます。形式名およびノード名は、リーダの作業負荷を削減するために使用するヒントに過ぎません。

デフォルト実装は、形式名がサポートされていることを確認してから getImageMetadata(imageIndex) の呼び出しの結果を返すだけです。サポートされていない場合は null を返します。

パラメータ:
imageIndex - メタデータの取得元イメージのインデックス
formatName - 返された IIOMetadata オブジェクトからドキュメントを取得するために使用するメタデータの形式名
nodeNames - 取得されたドキュメントに含まれるノード名を保持する Set
戻り値:
IIOMetadata オブジェクト、または null
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IllegalArgumentException - formatNamenull の場合
IllegalArgumentException - nodeNamesnull の場合
IOException - 読み込み中にエラーが発生した場合

read

public BufferedImage read(int imageIndex)
                   throws IOException
imageIndex によってインデックスを付けられたイメージを読み込み、デフォルトの ImageReadParam を使用して、完全な BufferedImage として返します。これは read(imageIndex, null) を呼び出す簡易メソッドです。

返されるイメージは getImageTypes から返される最初の ImageTypeSpecifier によってフォーマットされます。

登録された IIOReadProgressListener オブジェクトは imageStarted メソッドの呼び出しによって通知され、そのあとに読み込みの進捗とともに imageProgress メソッドの呼び出しが続きます。最後に imageComplete メソッドが呼び出されます。IIOReadUpdateListener オブジェクトは、読み込み中にピクセルが復号化されるときに更新されます。最後に、IIOReadWarningListener オブジェクトは、復号化中に発生する致命的ではない警告の通知を受け取ります。

パラメータ:
imageIndex - 取得されるイメージのインデックス
戻り値:
BufferedImage としてのイメージの必要な部分
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

read

public abstract BufferedImage read(int imageIndex,
                                   ImageReadParam param)
                            throws IOException
imageIndex によってインデックスを付けられたイメージを読み込み、指定された ImageReadParam を使用して、完全な BufferedImage として返します。

返される実際の BufferedImage は、getDestination メソッドによって定義されたアルゴリズムを使用して選択されます。

登録された IIOReadProgressListener オブジェクトは imageStarted メソッドの呼び出しによって通知され、そのあとに読み込みの進捗とともに imageProgress メソッドの呼び出しが続きます。最後に imageComplete メソッドが呼び出されます。IIOReadUpdateListener オブジェクトは、読み込み中にピクセルが復号化されるときに更新されます。最後に、IIOReadWarningListener オブジェクトは、復号化中に発生する致命的ではない警告の通知を受け取ります。

読み取られるソースバンドおよび書き込まれるデスティネーションバンドのセットは、指定された ImageReadParamgetSourceBandsgetDestinationBands を呼び出すことによって決定されます。これらのメソッドによって返される配列の長さが異なる場合、ソースバンドのセットが使用可能な最大のソースインデックスより大きいインデックスを保持する場合、またはデスティネーションバンドのセットが有効な最大のデスティネーションインデックスより大きいインデックスを保持する場合、IllegalArgumentException がスローされます。

指定された ImageReadParam が、このリーダによってサポートされないオプションの設定値 (ソースのレンダリングサイズまたは任意の形式別設定など) を保持する場合、これらは無視されます。

パラメータ:
imageIndex - 取得されるイメージのインデックス
param - 読み込みプロセスの制御に使用する ImageReadParam、または null
戻り値:
BufferedImage としてのイメージの必要な部分
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IllegalArgumentException - param.getSourceBands および param.getDestinationBands によって指定されたソースとデスティネーションバンドのセットの長さが異なる場合、または範囲外のインデックスを含んでいる場合
IllegalArgumentException - 結果のイメージが 1 より小さい幅または高さを持つ場合
IOException - 読み込み中にエラーが発生した場合

readAll

public IIOImage readAll(int imageIndex,
                        ImageReadParam param)
                 throws IOException
imageIndex によってインデックスを付けられたイメージを読み込み、指定された ImageReadParam を使用して、イメージ、サムネール、および関連するイメージのメタデータを保持する IIOImage を返します。

返される IIOImage によって参照される BufferedImage は、getDestination メソッドによって定義されたアルゴリズムを使用して選択されます。

登録された IIOReadProgressListener オブジェクトは imageStarted メソッドの呼び出しによって通知され、そのあとに読み込みの進捗とともに imageProgress メソッドの呼び出しが続きます。最後に imageComplete メソッドが呼び出されます。IIOReadUpdateListener オブジェクトは、読み込み中にピクセルが復号化されるときに更新されます。最後に、IIOReadWarningListener オブジェクトは、復号化中に発生する致命的ではない警告の通知を受け取ります。

読み取られるソースバンドおよび書き込まれるデスティネーションバンドのセットは、指定された ImageReadParamgetSourceBandsgetDestinationBands を呼び出すことによって決定されます。これらのメソッドによって返される配列の長さが異なる場合、ソースバンドのセットが使用可能な最大のソースインデックスより大きいインデックスを保持する場合、またはデスティネーションバンドのセットが有効な最大のデスティネーションインデックスより大きいインデックスを保持する場合、IllegalArgumentException がスローされます。

領域の設定に関係なく、サムネールの全体が返されます。

指定された ImageReadParam が、このリーダによってサポートされないオプションの設定値 (ソースのレンダリングサイズまたは任意の形式別設定など) を保持する場合、これらの値は無視されます。

パラメータ:
imageIndex - 取得されるイメージのインデックス
param - 読み込みプロセスの制御に使用する ImageReadParam、または null
戻り値:
イメージの必要な部分、サムネールのセット、および関連するメタデータを保持する IIOImage
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IllegalArgumentException - param.getSourceBands および param.getDestinationBands によって指定されたソースとデスティネーションバンドのセットの長さが異なる場合、または範囲外のインデックスを含んでいる場合
IllegalArgumentException - 結果のイメージが 1 より小さい幅または高さを持つ場合
IOException - 読み込み中にエラーが発生した場合

readAll

public Iterator<IIOImage> readAll(Iterator<? extends ImageReadParam> params)
                           throws IOException
すべてのイメージ、サムネール、およびメタデータを保持し、getMinIndex によって指定されたインデックスで始まる Iterator を、IIOImage オブジェクトの形式で入力ソースから返します。ImageReadParam オブジェクトを保持する Iterator が提供されます。使用できるイメージがなくなるまで、入力ソースから読み取られるイメージごとに 1 つの要素が消費されます。読み込みパラメータの Iterator が、要素を消費し尽くした場合で、入力ソースから使用できるイメージがまだあるときは、残されたイメージに対してデフォルトの読み込みパラメータが使用されます。

paramsnull の場合、すべてのイメージに対してデフォルトの読み込みパラメータが使用されます。

返される IIOImage によって参照される BufferedImage は、getDestination メソッドによって定義されたアルゴリズムを使用して選択されます。

登録された IIOReadProgressListener オブジェクトは sequenceStarted メソッドの呼び出しによって一度通知されます。ついで、復号化された各イメージに対して、 imageStarted の呼び出しが行われ、そのあとに読み込みの進捗とともに imageProgress が呼び出され、最後に imageComplete が呼び出されます。sequenceComplete メソッドは、最後のイメージがデコートされたあとに呼び出されます。IIOReadUpdateListener オブジェクトは、読み込み中にピクセルが復号化されるときに更新されます。最後に、IIOReadWarningListener オブジェクトは、復号化中に発生する致命的ではない警告の通知を受け取ります。

読み取られるソースバンドおよび書き込まれるデスティネーションバンドのセットは、指定された ImageReadParamgetSourceBandsgetDestinationBands を呼び出すことによって決定されます。これらのメソッドによって返される配列の長さが異なる場合、ソースバンドのセットが使用可能な最大のソースインデックスより大きいインデックスを保持する場合、またはデスティネーションバンドのセットが有効な最大のデスティネーションインデックスより大きいインデックスを保持する場合、IllegalArgumentException がスローされます。

領域の設定に関係なく、サムネールの全体が返されます。

指定された ImageReadParam のいずれかが、このリーダによってサポートされないオプションの設定値 (ソースのレンダリングサイズまたは任意の書式別設定など) を保持する場合、これらは無視されます。

パラメータ:
params - ImageReadParam オブジェクトを保持する Iterator
戻り値:
IIOImage として、入力ソースの内容を表す Iterator
例外:
IllegalStateException - 入力ソースが設定されていない場合
IllegalArgumentException - paramsnull 以外の要素が ImageReadParam ではない場合
IllegalArgumentException - param.getSourceBands および param.getDestinationBands によって指定されたソースとデスティネーションバンドのセットの長さが異なる場合、または範囲外のインデックスを含んでいる場合
IllegalArgumentException - 結果のイメージが 1 より小さい幅または高さを持つ場合
IOException - 読み込み中にエラーが発生した場合
関連項目:
ImageReadParam, IIOImage

canReadRaster

public boolean canReadRaster()
このプラグインがピクセルデータの Raster だけの読み込みをサポートする場合、true を返します。このメソッドが false を返す場合、 readRaster または readTileRaster の呼び出しは UnsupportedOperationException をスローします。

デフォルト実装は false を返します。

戻り値:
このプラグインが raw Raster の読み込みをサポートする場合は true
関連項目:
readRaster(int, javax.imageio.ImageReadParam), readTileRaster(int, int, int)

readRaster

public Raster readRaster(int imageIndex,
                         ImageReadParam param)
                  throws IOException
色変換を適用せずに、イメージストリームからのピクセルデータを保持する新しい Raster オブジェクトを返します。アプリケーションは、別の方法でピクセルデータを解釈する方法を指定します。指定された ImageReadParam オブジェクトのデスティネーションまたはイメージ型のパラメータは無視されます。ただし、ほかのすべてのパラメータは、デスティネーション座標が物理座標ではなく論理座標として使用される場合を除いて、read メソッドのように正確に使用されます。返される Raster のサイズは、常に実際のイメージにクリップされたソース領域のサイズになります。ストリーム自体の論理座標は無視されます。

このメソッドは JPEG など通常、色変換を適用する形式や、リモートセンシングまたは医療用イメージデータなど通常、関連するカラースペースを持たない形式が raw ピクセルデータにアクセスできるようにします。

登録された readUpdateListener は無視されるので、BufferedImage はありませんが、ほかのすべてのリスナーは、 read メソッドの場合のように正確に呼び出されます。

canReadRaster()false を返す場合、このメソッドは UnsupportedOperationException をスローします。

指定された ImageReadParam が、このリーダによってサポートされないオプションの設定値 (ソースのレンダリングサイズまたは任意の形式別設定など) を保持する場合、これらは無視されます。

デフォルト実装は UnsupportedOperationException をスローします。

パラメータ:
imageIndex - 読み取られるイメージのインデックス
param - 読み込みプロセスの制御に使用する ImageReadParam、または null
戻り値:
Raster としてのイメージの必要な部分
例外:
UnsupportedOperationException - このプラグインが raw Raster の読み込みをサポートしない場合
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合
関連項目:
canReadRaster(), read(int), Raster

isImageTiled

public boolean isImageTiled(int imageIndex)
                     throws IOException
イメージがタイル、つまりオーバーラップしない等しいサイズの矩形に組み入れられる場合は true を返します。

リーダのプラグインは、イメージに存在するタイリングを格納されているとおりに表示するかどうかを選択できます。明らかに何も存在しない場合でも、タイリングの通知を選択できます。一般に、個々のタイルにアクセスするときに何らかの利点 (速度や容量など) がある場合にだけ、タイリングは通知されます。リーダは、タイリングを通知するかどうかにかかわらず、ImageReadParam に指定された任意の矩形領域を読み取ることができる必要があります。

すべてのイメージをタイリングするように保証されている、あるいはタイリングしないように保証されているリーダは、イメージデータにアクセスせずにそれぞれ true または false を返します。このような場合、入力ソースが設定されていないか、またはイメージのインデックスが範囲外にある場合でも例外をスローする必要はありません。

デフォルト実装は false を返します。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
イメージがタイリングされる場合は true
例外:
IllegalStateException - 入力ソースが戻り値の決定を要求される場合で、何も設定されていない場合
IndexOutOfBoundsException - 戻り値を決定するためにイメージにアクセスする必要があるが、指定されたインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getTileWidth

public int getTileWidth(int imageIndex)
                 throws IOException
指定されたイメージのタイルの幅を返します。

デフォルト実装は、単にタイリングされないイメージに対して正しい getWidth(imageIndex) を返します。タイリングをサポートするリーダは、このメソッドをオーバーライドする必要があります。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
タイルの幅
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getTileHeight

public int getTileHeight(int imageIndex)
                  throws IOException
指定されたイメージのタイルの高さを返します。

デフォルト実装は、単にタイリングされないイメージに対して正しい getHeight(imageIndex) を返します。タイリングをサポートするリーダは、このメソッドをオーバーライドする必要があります。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
タイルの高さ
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getTileGridXOffset

public int getTileGridXOffset(int imageIndex)
                       throws IOException
指定されたイメージのタイル (0, 0) の左上隅の X 座標を返します。

タイルグリッドの X 座標が常に同じ値 (通常は 0) を持つリーダは、イメージデータにアクセスせずに値を返します。このような場合、入力ソースが設定されていないか、あるいはイメージのインデックスが範囲外にあるときでも、例外をスローする必要はありません。

デフォルト実装は、タイリングされないイメージとほとんどの形式のタイリングされたイメージに対して正しい値 0 を返すだけです。(0, 0) 以外の座標を持つタイリングをサポートするリーダは、このメソッドをオーバーライドする必要があります。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
タイルグリッドの X 座標
例外:
IllegalStateException - 入力ソースが戻り値の決定を要求される場合で、何も設定されていない場合
IndexOutOfBoundsException - 戻り値を決定するためにイメージにアクセスする必要があるが、指定されたインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getTileGridYOffset

public int getTileGridYOffset(int imageIndex)
                       throws IOException
指定されたイメージのタイル (0, 0) の左上隅の Y 座標を返します。

タイルグリッドの Y 座標が常に同じ値 (通常は 0) を持つリーダは、イメージデータにアクセスせずに値を返します。このような場合、入力ソースが設定されていないか、またはイメージのインデックスが範囲外にある場合でも、例外をスローする必要はありません。

デフォルト実装は、タイリングされないイメージとほとんどの形式のタイリングされたイメージに対して正しい値 0 を返すだけです。(0, 0) 以外の座標を持つタイリングをサポートするリーダは、このメソッドをオーバーライドする必要があります。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
タイルグリッドの Y 座標
例外:
IllegalStateException - 入力ソースが戻り値の決定を要求される場合で、何も設定されていない場合
IndexOutOfBoundsException - 戻り値を決定するためにイメージにアクセスする必要があるが、指定されたインデックスが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

readTile

public BufferedImage readTile(int imageIndex,
                              int tileX,
                              int tileY)
                       throws IOException
tileX および tileY 引数によって指定され、BufferedImage として返されるタイルを読み込みます。引数が領域外にある場合、IllegalArgumentException がスローされます。イメージがタイリングされない場合、値 0, 0 はイメージ全体を返します。その他の値は IllegalArgumentException をスローさせます。

このメソッドは、単に読み込みパラメータを使用して read(int, ImageReadParam) を読み取る場合と同等の簡易メソッドです。この読み込みパラメータは、tileX*getTileWidth(imageIndex)tileY*getTileHeight(imageIndex) の座標および getTileWidth(imageIndex)getTileHeight(imageIndex) の幅と高さを持つソース領域を指定し、サブサンプリング係数 1 および座標 0 を指定します。タイルを間引きするには、この領域と異なるサブサンプリングパラメータを指定する読み込みパラメータを使用して、read を呼び出します。

デフォルト実装は、tileX および tileY が 0 の場合、イメージ全体を返し、0 以外の場合は IllegalArgumentException をスローします。

パラメータ:
imageIndex - 取得されるイメージのインデックス
tileX - 取得されるタイルの 0 で始まる列のインデックス
tileY - 取得されるタイルの 0 で始まる行のインデックス
戻り値:
BufferedImage としてのタイル
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - imageIndex が範囲外にある場合
IllegalArgumentException - タイルのインデックスが範囲外の場合
IOException - 読み込み中にエラーが発生した場合

readTileRaster

public Raster readTileRaster(int imageIndex,
                             int tileX,
                             int tileY)
                      throws IOException
色変換を適用せずに、タイルからの raw ピクセルデータを保持する新しい Raster オブジェクトを返します。アプリケーションは、別の方法でピクセルデータを解釈する方法を指定します。

canReadRaster()false を返す場合、このメソッドは UnsupportedOperationException をスローします。

デフォルト実装は、Raster の読み込みをサポートしているかどうかを確認します。サポートしている場合は、tileX および tileY が 0 の場合、readRaster(imageIndex, null) を呼び出します。0 以外の場合は IllegalArgumentException をスローします。

パラメータ:
imageIndex - 取得されるイメージのインデックス
tileX - 取得されるタイルの 0 で始まる列のインデックス
tileY - 取得されるタイルの 0 で始まる行のインデックス
戻り値:
Raster としてのタイル
例外:
UnsupportedOperationException - このプラグインが raw Raster の読み込みをサポートしない場合
IllegalArgumentException - タイルのインデックスが範囲外の場合
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - imageIndex が範囲外にある場合
IOException - 読み込み中にエラーが発生した場合
関連項目:
readTile(int, int, int), readRaster(int, javax.imageio.ImageReadParam), Raster

readAsRenderedImage

public RenderedImage readAsRenderedImage(int imageIndex,
                                         ImageReadParam param)
                                  throws IOException
imageIndex によってインデックスを付けられたイメージの内容を保持する RenderedImage オブジェクトを返します。デフォルトでは、返されるイメージは単純に read(imageIndex, param) によって返される BufferedImage です。

このメソッドのセマンティクスは、他の read メソッドのセマンティクスといくつかの点で異なります。第一に、ImageReadParam に設定される任意のデスティネーションイメージまたはイメージ型、およびその両方は無視されます。第二に、通常のリスナーの呼び出しは、それらが実行され、そのとおりの意味があることを保証しません。これは返されるイメージが、返されたとき、あるいは実際には任意の時点で、ピクセルデータにより完全には生成されないためです。

指定された ImageReadParam が、このリーダによってサポートされないオプションの設定値 (ソースのレンダリングサイズまたは任意の形式別設定など) を保持する場合、これらは無視されます。

デフォルト実装は、 read(imageIndex, param) を呼び出すだけです。

パラメータ:
imageIndex - 取得されるイメージのインデックス
param - 読み込みプロセスの制御に使用する ImageReadParam、または null
戻り値:
イメージのビューを提供する RenderedImage オブジェクト
例外:
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定したインデックスが範囲外にある場合
IllegalArgumentException - param.getSourceBands および param.getDestinationBands によって指定されたソースとデスティネーションバンドのセットの長さが異なる場合、または範囲外のインデックスを含んでいる場合
IllegalArgumentException - 結果のイメージが 1 より小さい幅または高さを持つ場合
IOException - 読み込み中にエラーが発生した場合

readerSupportsThumbnails

public boolean readerSupportsThumbnails()
このリーダによって理解されるイメージ形式が、それに関連付けられたサムネールプレビューイメージをサポートする場合、true を返します。デフォルト実装は false を返します。

このメソッドが false を返す場合、hasThumbnailsgetNumThumbnails は、それぞれ false0 を返します。また、readThumbnail は、引く数にかかわらず UnsupportedOperationException を返します。

サムネールをサポートしないリーダは、サムネールに関連するメソッドを実装する必要がありません。

戻り値:
サムネールがサポートされる場合は true

hasThumbnails

public boolean hasThumbnails(int imageIndex)
                      throws IOException
指定されたイメージが、それに関連付けられたサムネールプレビューイメージを持つ場合、true を返します。形式がサムネールをサポートしない場合、つまり readerSupportsThumbnailsfalse を返す場合、入力ソースが設定されているかどうか、または imageIndex が境界内にあるかどうかにかかわらず false を返します。

getNumThumbnails が 0 より大きい値を返す場合、デフォルト実装は.true.を返します。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
指定されたイメージがサムネールの場合は true
例外:
IllegalStateException - リーダがサムネールをサポートするが、入力ソースが設定されていない場合
IndexOutOfBoundsException - リーダがサムネールをサポートするが、imageIndex が範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getNumThumbnails

public int getNumThumbnails(int imageIndex)
                     throws IOException
指定されたイメージに関連付けられたサムネールプレビューイメージの数を返します。形式がサムネールをサポートしない場合、つまり readerSupportsThumbnailsfalse を返す場合、入力ソースが設定されているかどうか、または imageIndex が境界内にあるかどうかにかかわらず 0 を返します。

デフォルト実装は、その引数を確認することなく、0 を返します。

パラメータ:
imageIndex - 照会されるイメージのインデックス
戻り値:
指定されたイメージに関連付けられたサムネールの数
例外:
IllegalStateException - リーダがサムネールをサポートするが、入力ソースが設定されていない場合
IndexOutOfBoundsException - リーダがサムネールをサポートするが、imageIndex が範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getThumbnailWidth

public int getThumbnailWidth(int imageIndex,
                             int thumbnailIndex)
                      throws IOException
thumbnailIndex によってインデックスを付けられたサムネールプレビューイメージの幅を返します。このイメージは ImageIndex によってインデックスを付けられたイメージに関連付けられています。

リーダがサムネールをサポートしない場合、つまり readerSupportsThumbnailsfalse を返す場合、UnsupportedOperationException をスローします。

デフォルト実装は、単に readThumbnail(imageindex, thumbnailIndex).getWidth() を返します。したがって、サブクラスはサムネールを読み取らないようにするために、可能な場合はこのメソッドをオーバーライドする必要があります。

パラメータ:
imageIndex - 取得されるイメージのインデックス
thumbnailIndex - 取得されるサムネールのインデックス
戻り値:
int として望ましいサムネールの幅
例外:
UnsupportedOperationException - サムネールがサポートされない場合
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定されたインデックスのどれかが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

getThumbnailHeight

public int getThumbnailHeight(int imageIndex,
                              int thumbnailIndex)
                       throws IOException
thumbnailIndex によってインデックスを付けられたサムネールプレビューイメージの高さを返します。このイメージは ImageIndex によってインデックスを付けられたイメージに関連付けられています。

リーダがサムネールをサポートしない場合、つまり readerSupportsThumbnailsfalse を返す場合、UnsupportedOperationException をスローします。

デフォルト実装は、readThumbnail(imageindex, thumbnailIndex).getHeight() を返すだけです。したがって、サブクラスはサムネールを読み取らないようにするために、可能な場合はこのメソッドをオーバーライドする必要があります。

パラメータ:
imageIndex - 取得されるイメージのインデックス
thumbnailIndex - 取得されるサムネールのインデックス
戻り値:
int として望ましいサムネールの高さ
例外:
UnsupportedOperationException - サムネールがサポートされない場合
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定されたインデックスのどれかが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

readThumbnail

public BufferedImage readThumbnail(int imageIndex,
                                   int thumbnailIndex)
                            throws IOException
thumbnailIndex によってインデックスを付けられたサムネールプレビューイメージを返します。このイメージは、 BufferedImage として ImageIndex によってインデックスを付けられたイメージに関連付けられています。

登録された IIOReadProgressListener オブジェクトは、thumbnailStartedthumbnailProgress、および thumbnailComplete メソッドを呼び出すことにより通知されます。

リーダがサムネールをサポートしない場合、つまり readerSupportsThumbnailsfalse を返すとき、入力ソースが設定されているかどうか、または インデックスが境界内にあるかどうかにかかわらず UnsupportedOperationException をスローします。

デフォルト実装は UnsupportedOperationException をスローします。

パラメータ:
imageIndex - 取得されるイメージのインデックス
thumbnailIndex - 取得されるサムネールのインデックス
戻り値:
BufferedImage としての目的のサムネール
例外:
UnsupportedOperationException - サムネールがサポートされない場合
IllegalStateException - 入力ソースが設定されていない場合
IndexOutOfBoundsException - 指定されたインデックスのどれかが範囲外にある場合
IOException - 読み込み中にエラーが発生した場合

abort

public void abort()
現在の読み込みオペレーションの中断を要求します。中断後のイメージの内容は定義されません。

リーダは各読み込みオペレーションの開始時に clearAbortRequest を呼び出して、読み込み中に abortRequested の値を定期的にポーリングする必要があります。


abortRequested

protected boolean abortRequested()
現在の読み込みオペレーションを中断する要求が行われた場合、リーダがインスタンス化されるか、または clearAbortRequest が呼び出されるため、true を返します。

戻り値:
現在の読み込みオペレーションを中断する必要がある場合は true
関連項目:
abort(), clearAbortRequest()

clearAbortRequest

protected void clearAbortRequest()
以前の中断要求をクリアします。このメソッドが呼び出されると、abortRequestedfalse を返します。

関連項目:
abort(), abortRequested()

addIIOReadWarningListener

public void addIIOReadWarningListener(IIOReadWarningListener listener)
IIOReadWarningListener を登録された警告リスナーのリストに追加します。listenernull の場合、例外はスローされず、アクションは何も行われません。指定されたリスナーに送信されるメッセージは、現在の Locale に照合され、地域対応されます (可能な場合)。Locale が設定されていない場合は、警告メッセージはリーダが適切と見なすとおりに地域対応されます。

パラメータ:
listener - 登録される IIOReadWarningListener
関連項目:
removeIIOReadWarningListener(javax.imageio.event.IIOReadWarningListener)

removeIIOReadWarningListener

public void removeIIOReadWarningListener(IIOReadWarningListener listener)
登録されたエラーリスナーのリストから、IIOReadWarningListener を削除します。以前にリスナーが登録されていない場合、または listenernull の場合、例外はスローされず、何もアクションは行われません。

パラメータ:
listener - 登録解除される IIOReadWarningListener
関連項目:
addIIOReadWarningListener(javax.imageio.event.IIOReadWarningListener)

removeAllIIOReadWarningListeners

public void removeAllIIOReadWarningListeners()
現在登録されているすべての IIOReadWarningListener オブジェクトを削除します。

デフォルト実装は warningListenerswarningLocales インスタンスの変数を null に設定します。


addIIOReadProgressListener

public void addIIOReadProgressListener(IIOReadProgressListener listener)
IIOReadProgressListener を登録された進捗リスナーのリストに追加します。listenernull の場合、例外はスローされず、アクションは何も行われません。

パラメータ:
listener - 登録される IIOReadProgressListener
関連項目:
removeIIOReadProgressListener(javax.imageio.event.IIOReadProgressListener)

removeIIOReadProgressListener

public void removeIIOReadProgressListener(IIOReadProgressListener listener)
登録された進捗リスナーのリストから、IIOReadProgressListener を削除します。以前にリスナーが登録されていない場合、または listenernull の場合、例外はスローされず、アクションは何も行われません。

パラメータ:
listener - 登録解除される IIOReadProgressListener
関連項目:
addIIOReadProgressListener(javax.imageio.event.IIOReadProgressListener)

removeAllIIOReadProgressListeners

public void removeAllIIOReadProgressListeners()
現在登録されているすべての IIOReadProgressListener オブジェクトを削除します。

デフォルト実装は progressListeners インスタンスの変数を null に設定します。


addIIOReadUpdateListener

public void addIIOReadUpdateListener(IIOReadUpdateListener listener)
IIOReadUpdateListener を、登録された更新リスナーのリストに追加します。listenernull の場合、例外はスローされず、アクションは何も行われません。リスナーは、イメージとサムネールが復号化されるときに、段階的に進行するパスの開始と終了を含むピクセルデータ更新の通知を受け取ります。

更新リスナーが存在しない場合、リーダはデスティネーションイメージまたはサムネール、あるいはその両方のピクセルの更新を、より少なく実行するように選択できます。これにより、復号化がより効率的に行われるようになります。

たとえば、プログレッシブ JPEG デコーディングでは、各パスに一連の係数の更新が含まれます。リスナーが存在する場合、これらの係数はピクセル値に変換され、各パスの RGB カラースペースに変換される必要があります。リスナーが存在しない場合、係数は単純に累積され、最終結果の変換と色の変換が一度だけ行われます。

復号化の最終結果は、中間更新が実行されているかどうかに関係なく同じです。したがって、最終イメージだけが必要な場合は、IIOReadUpdateListener を登録しないほうが望ましい結果が得られます。一般的には、ローカル CPU の処理に比べて非常に遅いネットワーク接続を介してイメージを取得する場合は、段階的に進行する更新がもっとも効率的です。高速接続による場合は、段階的に進行する更新により実際にイメージの表示は遅くなります。

パラメータ:
listener - 登録される IIOReadUpdateListener
関連項目:
removeIIOReadUpdateListener(javax.imageio.event.IIOReadUpdateListener)

removeIIOReadUpdateListener

public void removeIIOReadUpdateListener(IIOReadUpdateListener listener)
登録された更新リスナーのリストから、IIOReadUpdateListener を削除します。以前にリスナーが登録されていない場合、または listenernull の場合、例外はスローされず、何もアクションは行われません。

パラメータ:
listener - 登録解除される IIOReadUpdateListener
関連項目:
addIIOReadUpdateListener(javax.imageio.event.IIOReadUpdateListener)

removeAllIIOReadUpdateListeners

public void removeAllIIOReadUpdateListeners()
現在登録されているすべての IIOReadUpdateListener オブジェクトを削除します。

デフォルト実装は updateListeners インスタンスの変数を null に設定します。


processSequenceStarted

protected void processSequenceStarted(int minIndex)
sequenceStarted メソッドの呼び出しによって、イメージ読み込みのシーケンスの開始を、登録されたすべての IIOReadProgressListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
minIndex - 読み取られた最小のインデックス

processSequenceComplete

protected void processSequenceComplete()
sequenceComplete メソッドの呼び出しによって、イメージ読み込みのシーケンスの完了を、登録されたすべての IIOReadProgressListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。


processImageStarted

protected void processImageStarted(int imageIndex)
imageStarted メソッドの呼び出しによって、イメージ読み込みの開始を、登録されたすべての IIOReadProgressListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
imageIndex - 読み取られるイメージのインデックス

processImageProgress

protected void processImageProgress(float percentageDone)
imageProgress メソッドの呼び出しによって、イメージ完成の現在の割合を、登録されたすべての IIOReadProgressListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
percentageDone - float としての現在の完成した割合

processImageComplete

protected void processImageComplete()
imageComplete メソッドの呼び出しによって、イメージ読み込みの完了を、登録されたすべての IIOReadProgressListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。


processThumbnailStarted

protected void processThumbnailStarted(int imageIndex,
                                       int thumbnailIndex)
thumbnailStarted メソッドの呼び出しによって、サムネール読み込みの開始を、登録されたすべての IIOReadProgressListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
imageIndex - サムネールに関連付けられたイメージのインデックス
thumbnailIndex - サムネールのインデックス

processThumbnailProgress

protected void processThumbnailProgress(float percentageDone)
thumbnailProgress メソッドの呼び出しによって、サムネール完成の現在の割合を、登録されたすべての IIOReadProgressListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
percentageDone - float としての現在の完成した割合

processThumbnailComplete

protected void processThumbnailComplete()
thumbnailComplete メソッドの呼び出しによって、サムネール読み込みの完了を、登録されたすべての IIOReadProgressListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。


processReadAborted

protected void processReadAborted()
readAborted メソッドの呼び出しによって、読み込みが中断されたことを、登録されたすべての IIOReadProgressListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。


processPassStarted

protected void processPassStarted(BufferedImage theImage,
                                  int pass,
                                  int minPass,
                                  int maxPass,
                                  int minX,
                                  int minY,
                                  int periodX,
                                  int periodY,
                                  int[] bands)
passStarted メソッドの呼び出しによって、プログレッシブパスの開始を、登録されたすべての IIOReadUpdateListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
theImage - 更新された BufferedImage
pass - 0 から始まる現在のパスのインデックス
minPass - 復号化される最初のパスのインデックス
maxPass - 復号化される最後のパスのインデックス
minX - パスに含まれる左上隅のピクセルの X 座標
minY - パスに含まれる左上隅のピクセルの X 座標
periodX - ピクセル間の水平方向の区切り
periodY - ピクセル間の垂直方向の区切り
bands - 影響を受けるデスティネーションバンドのセットを示す int の配列

processImageUpdate

protected void processImageUpdate(BufferedImage theImage,
                                  int minX,
                                  int minY,
                                  int width,
                                  int height,
                                  int periodX,
                                  int periodY,
                                  int[] bands)
imageUpdate メソッドの呼び出しによって、サンプルのセットの更新を、登録されたすべての IIOReadUpdateListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
theImage - 更新された BufferedImage
minX - パスに含まれる左上隅のピクセルの X 座標
minY - パスに含まれる左上隅のピクセルの X 座標
width - periodX > 1 の場合にスキップされたピクセルを含む、更新された領域の幅の合計
height - periodY > 1 の場合にスキップされたピクセルを含む、更新された領域の高さの合計
periodX - ピクセル間の水平方向の区切り
periodY - ピクセル間の垂直方向の区切り
bands - 影響を受けるデスティネーションバンドのセットを示す int の配列

processPassComplete

protected void processPassComplete(BufferedImage theImage)
passComplete メソッドの呼び出しによって、プログレッシブパスの終了を、登録されたすべての IIOReadUpdateListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
theImage - 更新された BufferedImage

processThumbnailPassStarted

protected void processThumbnailPassStarted(BufferedImage theThumbnail,
                                           int pass,
                                           int minPass,
                                           int maxPass,
                                           int minX,
                                           int minY,
                                           int periodX,
                                           int periodY,
                                           int[] bands)
thumbnailPassStarted メソッドの呼び出しによって、サムネールのプログレッシブパスの開始を、登録されたすべての IIOReadUpdateListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
theThumbnail - 更新されたサムネールの BufferedImage
pass - 0 から始まる現在のパスのインデックス
minPass - 復号化される最初のパスのインデックス
maxPass - 復号化される最後のパスのインデックス
minX - パスに含まれる左上隅のピクセルの X 座標
minY - パスに含まれる左上隅のピクセルの X 座標
periodX - ピクセル間の水平方向の区切り
periodY - ピクセル間の垂直方向の区切り
bands - 影響を受けるデスティネーションバンドのセットを示す int の配列

processThumbnailUpdate

protected void processThumbnailUpdate(BufferedImage theThumbnail,
                                      int minX,
                                      int minY,
                                      int width,
                                      int height,
                                      int periodX,
                                      int periodY,
                                      int[] bands)
thumbnailUpdate メソッドの呼び出しによって、サムネールイメージのサンプルのセットの更新を、登録されたすべての IIOReadUpdateListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
theThumbnail - 更新されたサムネールの BufferedImage
minX - パスに含まれる左上隅のピクセルの X 座標
minY - パスに含まれる左上隅のピクセルの X 座標
width - periodX > 1 の場合にスキップされたピクセルを含む、更新された領域の幅の合計
height - periodY > 1 の場合にスキップされたピクセルを含む、更新された領域の高さの合計
periodX - ピクセル間の水平方向の区切り
periodY - ピクセル間の垂直方向の区切り
bands - 影響を受けるデスティネーションバンドのセットを示す int の配列

processThumbnailPassComplete

protected void processThumbnailPassComplete(BufferedImage theThumbnail)
thumbnailPassComplete メソッドの呼び出しによって、サムネールのプログレッシブパスの終了を、登録されたすべての IIOReadUpdateListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
theThumbnail - 更新されたサムネールの BufferedImage

processWarningOccurred

protected void processWarningOccurred(String warning)
warningOccurred メソッドの呼び出しによって、警告メッセージを、登録されたすべての IIOReadWarningListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
warning - 送信する警告メッセージ
例外:
IllegalArgumentException - warningnull の場合

processWarningOccurred

protected void processWarningOccurred(String baseName,
                                      String keyword)
ResourceBundle から取得した文字列を持つ warningOccurred メソッドの呼び出しによって、地域対応された警告メッセージを、登録されたすべての IIOReadWarningListener に通知します。サブクラスは、このメソッドを簡易メソッドとして使用します。

パラメータ:
baseName - 地域対応された警告メッセージを含む ResourceBundle のセットのベース名
keyword - ResourceBundle 内の警告メッセージにインデックスを付けるために使用されるキーワード
例外:
IllegalArgumentException - baseNamenull の場合
IllegalArgumentException - keywordnull の場合
IllegalArgumentException - 適切な ResourceBundle が配置されない場合
IllegalArgumentException - 名前付きのリソースが配置された ResourceBundle で検出されない場合
IllegalArgumentException - ResourceBundle から取得したオブジェクトが String ではない場合

reset

public void reset()
ImageReader を初期状態に復元します。

デフォルト実装は、setInput(null, false)setLocale(null)removeAllIIOReadUpdateListeners()removeAllIIOReadWarningListeners()removeAllIIOReadProgressListeners()、および clearAbortRequest を呼び出します。


dispose

public void dispose()
このオブジェクトが保持するすべてのリソースを解放できるようにします。このメソッドの呼び出しのあとに続く finalize 以外の他のメソッドの呼び出しの結果は未定義です。

アプリケーションは、ImageReader が不要になった時点でこのメソッドを呼び出すことが重要です。そうしないと、リーダはリソース上に無期限に残存し続ける可能性があります。

このメソッドのデフォルトの実装は、スーパークラスでは何も実行しません。サブクラスの実装で、すべてのリソース、特にネイティブリソースが解放されたことを確認してください。


getSourceRegion

protected static Rectangle getSourceRegion(ImageReadParam param,
                                           int srcWidth,
                                           int srcHeight)
指定された ImageReadParam のソース領域とサブサンプリングの座標の設定を考慮して、リーダが読み取るソースイメージの領域を計算するために使用するユーティリティメソッドです。実際のサブサンプリング係数、デスティネーションのサイズ、およびデスティネーションの座標は考慮されません。このため、さらにクリッピングが必要になります。computeRegions メソッドは必要なすべてのクリッピングを実行します。

パラメータ:
param - 使用された ImageReadParam、または null
srcWidth - ソースイメージの幅
srcHeight - ソースイメージの高さ
戻り値:
Rectangle としてのソース領域

computeRegions

protected static void computeRegions(ImageReadParam param,
                                     int srcWidth,
                                     int srcHeight,
                                     BufferedImage image,
                                     Rectangle srcRegion,
                                     Rectangle destRegion)
ソースイメージの幅と高さ、オプションのデスティネーションイメージ、およびオプションの ImageReadParam を考慮して、対象のソース領域および対象のデスティネーション領域を計算します。ソース領域は、全体のソースイメージから開始されます。ついで、ImageReadParam に指定されたソース領域 (指定されている場合) にクリップされます。

デスティネーション座標のどれかが負の場合、ソース領域はサブサンプリングを考慮して、左上がデスティネーションイメージの左上に一致するようにクリップされます。ついで、その結果がサブサンプリングおよびデスティネーション座標を考慮して、右および下のデスティネーションイメージ (指定されている場合) にクリップされます。

同じように、デスティネーション領域がソースイメージから開始され、ImageReadParam に指定されたデスティネーション座標 (存在する場合) に変換され、最後にデスティネーションイメージ (存在する場合) にクリップされます。

ソースまたはデスティネーション領域のどれかが幅または高さ 0 で終わる場合、IllegalArgumentException がスローされます。

ソースのクリッピングだけが必要な場合は getSourceRegion メソッドを使用します。

パラメータ:
param - ImageReadParam または null
srcWidth - ソースイメージの幅
srcHeight - ソースイメージの高さ
image - デスティネーションイメージとなる BufferedImage、または null
srcRegion - 対象のソース領域が挿入される Rectangle
destRegion - 対象のデスティネーション領域が挿入される Rectangle
例外:
IllegalArgumentException - srcRegionnull の場合
IllegalArgumentException - dstRegionnull の場合
IllegalArgumentException - 結果のソースまたはデスティネーションが空の場合

checkReadParamBandSettings

protected static void checkReadParamBandSettings(ImageReadParam param,
                                                 int numSrcBands,
                                                 int numDstBands)
ImageReadParam のソースとデスティネーションバンドの設定の有効性を判定するために、リーダが使用するユーティリティメソッドです。このメソッドは、入力ストリームに存在するソースイメージのバンド数と書き込まれたデスティネーションイメージのバンド数の両方を、リーダが知るとすぐに呼び出されます。

メソッドは、getSourceBandsgetDestinationBands メソッドを使用して、param からソースおよびデスティネーションバンドの設定の配列を取り出します。paramnull の場合は、これらは null と見なします。ソースバンドの設定の配列が null の場合、配列 { 0, 1, ..., numSrcBands - 1 } と同等と見なします。デスティネーションバンドの設定の配列の場合も同様です。

次に、メソッドは、両方の配列が長さが等しく、どの配列とも有効なバンドの最大のインデックスより大きい値を持っていないことを判定します。

失敗すると、IllegalArgumentException がスローされ、成功するとそのままメソッドが返されます。

パラメータ:
param - イメージの読み込みに使用された ImageReadParam
numSrcBands - 入力ソースに存在する int イメージのバンドの数
numDstBands - 書き込まれたデスティネーションイメージのバンドの数
例外:
IllegalArgumentException - param が、ソースまたはデスティネーションバンドのサブセット、あるいはその両方の無効な仕様を持つ場合

getDestination

protected static BufferedImage getDestination(ImageReadParam param,
                                              Iterator<ImageTypeSpecifier> imageTypes,
                                              int width,
                                              int height)
                                       throws IIOException
復号化されたピクセルデータが書き込まれる BufferedImage を返します。イメージは、null 以外の場合、指定された ImageReadParam を確認することにより判定されます。getDestination メソッドが null 以外の値を返す場合は、単にそのイメージが返されます。それ以外の場合は、param.getDestinationType メソッドが呼び出されて、特定のイメージの型が指定されているかどうかを確認します。その場合には、imageTypes に含まれるものの 1 つと同じであることを確認してから、返された ImageTypeSpecifier が使用されます。

paramnull、または前述の手順がイメージ、あるいは ImageTypeSpecifier を発生させない場合、imageTypes パラメータから取得された最初の値が使用されます。通常、呼び出し側が imageTypesgetImageTypes(imageIndex) の値に設定します。

次に、イメージの寸法が computeRegions の呼び出しによって決定されます。復号化されたイメージの実際の幅と高さが、width および height パラメータとして渡されます。

パラメータ:
param - デスティネーションイメージまたはイメージ型を取得するために使用する ImageReadParam、または null
imageTypes - デフォルトを最初にして、正当なイメージ型を示す ImageTypeSpecifierIterator
width - 復号化が要求されるイメージまたはタイルの真の幅
height - 復号化が要求されるイメージまたはタイルの真の幅
戻り値:
復号化されたピクセルデータが書き込まれる BufferedImage
例外:
IIOException - param によって指定された ImageTypeSpecifierimageTypes からの正当な型と一致しない場合
IllegalArgumentException - imageTypesnull または空の場合、または ImageTypeSpecifier が指定する型ではないオブジェクトを取り出した場合
IllegalArgumentException - 結果のイメージが 1 より小さい幅または高さを持つ場合
IllegalArgumentException - widthheight の積が Integer.MAX_VALUE より大きい場合

JavaTM 2 Platform
Standard Ed. 5.0

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java 2 SDK SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。