JavaTM Platform
Standard Ed. 6

javax.imageio
クラス ImageWriter

java.lang.Object
  上位を拡張 javax.imageio.ImageWriter
すべての実装されたインタフェース:
ImageTranscoder

public abstract class ImageWriter
extends Object
implements ImageTranscoder

符号化とイメージの書き込みのための抽象スーパークラスです。Java Image I/O フレームワークのコンテキスト内で、イメージを書き出すクラスが、このクラスをサブクラス化する必要があります。

ImageWriter オブジェクトは通常、特定形式のためのサービスプロバイダクラスによりインスタンス化されます。サービスプロバイダクラスは IIORegistry に登録され、形式を識別し、使用可能な形式の読み取り側と書き込み側を提示するために使用されます。

関連項目:
ImageReader, ImageWriteParam, IIORegistry, ImageWriterSpi

フィールドの概要
protected  Locale[] availableLocales
          警告メッセージと圧縮設定値をローカライズするために使用できる Locale の配列、またはローカライズ版がサポートされていない場合は null になります。
protected  Locale locale
          ローカライズ版に使用する現在の Locale、または設定されていない場合は null です。
protected  ImageWriterSpi originatingProvider
          このオブジェクトをインスタンス化した ImageWriterSpi、あるいはその識別情報が存在しない、またはわからない場合、null になります。
protected  Object output
          ImageOutputStream または setOutput が設定して、getOutput が取り出したその他の Object です。
protected  List<IIOWriteProgressListener> progressListeners
          現在登録された IIOWriteProgressListenerList で、デフォルトでは null に初期化され、空の List と同じ意味になります。
protected  List<IIOWriteWarningListener> warningListeners
          現在登録された IIOWriteWarningListenerList で、デフォルトでは null に初期化され、空の List と同じ意味になります。
protected  List<Locale> warningLocales
          warningListeners の各要素に対する LocaleList で、デフォルトでは null に初期化され、空の List と同じ意味になります。
 
コンストラクタの概要
protected ImageWriter(ImageWriterSpi originatingProvider)
          ImageWriter を構築し、その originatingProvider インスタンス変数を、提供された値に設定します。
 
メソッドの概要
 void abort()
          現在の書き込みオペレーションの中断を要求します。
protected  boolean abortRequested()
          書き込み側がインスタンス化された、または clearAbortRequest が呼び出されたために、現在の書き込み操作の中止要求が出された場合、true を返します。
 void addIIOWriteProgressListener(IIOWriteProgressListener listener)
          登録された進捗リスナーのリストに IIOWriteProgressListener を追加します。
 void addIIOWriteWarningListener(IIOWriteWarningListener listener)
          登録された警告リスナーのリストに IIOWriteWarningListener を追加します。
 boolean canInsertEmpty(int imageIndex)
          指定されたインデックスでの新規の空イメージの挿入を書き込み側がサポートする場合、true を返します。
 boolean canInsertImage(int imageIndex)
          指定されたインデックスでの新規イメージの挿入を書き込み側がサポートする場合、true を返します。
 boolean canRemoveImage(int imageIndex)
          書き込み側が、指定されたインデックスでの既存イメージの削除をサポートする場合、true を返します。
 boolean canReplaceImageMetadata(int imageIndex)
          既存のイメージに関連付けられたイメージメタデータを、インデックス imageIndex に置き換えることができる場合、true を返します。
 boolean canReplacePixels(int imageIndex)
          書き込み側で、replacePixels メソッドを使用して、指定されたイメージのピクセルの置き換えを許可する場合、true を返します。
 boolean canReplaceStreamMetadata()
          すでに出力に存在するストリームメタデータを置き換えられる場合、true を返します。
 boolean canWriteEmpty()
          未定義のピクセル値を持つ 1 つのイメージと、関連付けられたメタデータとサムネールから成る、完全なイメージストリームの出力への書き込みを書き込み側がサポートする場合、true を返します。
 boolean canWriteRasters()
          IIOImage パラメータを取るメソッドが、(RenderedImage に対して) Raster ソースイメージを処理できる場合、true を返します。
 boolean canWriteSequence()
          すでにヘッダー情報を含み、以前のイメージである可能性を持つイメージストリームに、書き込み側がイメージを追加できる場合、true を返します。
protected  void clearAbortRequest()
          以前の中断要求をクリアします。
abstract  IIOMetadata convertImageMetadata(IIOMetadata inData, ImageTypeSpecifier imageType, ImageWriteParam param)
          符号化に使用でき、必要に応じて、ドキュメントインタフェースまたは符号化に使用する書き込み側プラグインに固有のほかのインタフェースを使用して変更できる、IIOMetadata オブジェクトを返します。
abstract  IIOMetadata convertStreamMetadata(IIOMetadata inData, ImageWriteParam param)
          符号化に使用でき、必要に応じて、ドキュメントインタフェースまたは符号化に使用する書き込み側プラグインに固有のほかのインタフェースを使用して変更できる、IIOMetadata オブジェクトを返します。
 void dispose()
          このオブジェクトが保持するすべてのリソースを解放できるようにします。
 void endInsertEmpty()
          以前の prepareInsertEmpty の呼び出しで始まった、新規イメージの挿入を完了します。
 void endReplacePixels()
          replacePixels の呼び出し処理を終了します。
 void endWriteEmpty()
          以前の prepareWriteEmpty の呼び出しで始まった、新規イメージの書き込みを完了します。
 void endWriteSequence()
          prepareWriteSequence で始まる一連のイメージの書き込みを完了します。
 Locale[] getAvailableLocales()
          警告リスナーと圧縮設定のローカライズに使用する Locale の配列を返します。
abstract  IIOMetadata getDefaultImageMetadata(ImageTypeSpecifier imageType, ImageWriteParam param)
          指定された型のイメージを符号化するためのデフォルト値を含む IIOMetadata オブジェクトを返します。
abstract  IIOMetadata getDefaultStreamMetadata(ImageWriteParam param)
          イメージのストリームを符号化するためのデフォルト値を含む IIOMetadata オブジェクトを返します。
 ImageWriteParam getDefaultWriteParam()
          デフォルト値、つまり ImageWriteParam オブジェクトが指定されなかった場合に使用される値を含む、このファイル形式に適切な型の新規 ImageWriteParam オブジェクトを返します。
 Locale getLocale()
          現在設定されている Locale、何も設定されていない場合は null を返します。
 int getNumThumbnailsSupported(ImageTypeSpecifier imageType, ImageWriteParam param, IIOMetadata streamMetadata, IIOMetadata imageMetadata)
          符号化中に使用されるメタデータオブジェクトと任意の追加書き込みパラメータ、およびイメージ型を考慮して、書き込まれている形式でサポートされるサムネール数を返します。
 ImageWriterSpi getOriginatingProvider()
          この ImageWriter を作成した ImageWriterSpi オブジェクト、またはこのオブジェクトが IIORegistry を介して作成されたかった場合 null を返します。
 Object getOutput()
          ImageOutputStream または setOutput メソッドの最近の呼び出しで設定されたほかの Object を返します。
 Dimension[] getPreferredThumbnailSizes(ImageTypeSpecifier imageType, ImageWriteParam param, IIOMetadata streamMetadata, IIOMetadata imageMetadata)
          サムネールイメージが出力ファイルまたはストリーム中で符号化されるとき、その正規サイズの範囲を示す Dimension の配列を返します。
 void prepareInsertEmpty(int imageIndex, ImageTypeSpecifier imageType, int width, int height, IIOMetadata imageMetadata, List<? extends BufferedImage> thumbnails, ImageWriteParam param)
          未定義のピクセル値を持つ新規イメージの、既存イメージストリームへの挿入を開始します。
 void prepareReplacePixels(int imageIndex, Rectangle region)
          replacePixels メソッドの一連の呼び出しを処理するために、書き込み側を準備します。
 void prepareWriteEmpty(IIOMetadata streamMetadata, ImageTypeSpecifier imageType, int width, int height, IIOMetadata imageMetadata, List<? extends BufferedImage> thumbnails, ImageWriteParam param)
          未定義のピクセル値を持つ 1 つのイメージと、関連付けられたメタデータとサムネールから成る、完全なイメージストリームの出力への書き込みを開始します。
 void prepareWriteSequence(IIOMetadata streamMetadata)
          次に続く一連の writeToSequence 呼び出しを受け付けるために、提供されるストリームメタデータオブジェクトを使用して、ストリームを準備します。
protected  void processImageComplete()
          登録されたすべての IIOWriteProgressListener に対し、その imageComplete メソッドを呼び出すことで、イメージ書き込みの完了を通知します。
protected  void processImageProgress(float percentageDone)
          登録されたすべての IIOWriteProgressListener に対し、その imageProgress メソッドを呼び出すことで、イメージ完成の現在の割合を通知します。
protected  void processImageStarted(int imageIndex)
          登録されたすべての IIOWriteProgressListener に対し、その imageStarted メソッドを呼び出すことで、イメージ書き込みの開始を通知します。
protected  void processThumbnailComplete()
          登録されたすべての IIOWriteProgressListener に対し、その thumbnailComplete メソッドを呼び出すことで、サムネール書き込みの完了を通知します。
protected  void processThumbnailProgress(float percentageDone)
          登録されたすべての IIOWriteProgressListener に対し、その thumbnailProgress メソッドを呼び出すことで、サムネール完成の現在の割合を通知します。
protected  void processThumbnailStarted(int imageIndex, int thumbnailIndex)
          登録されたすべての IIOWriteProgressListener に対し、その thumbnailStarted メソッドを呼び出すことで、サムネール書き込みの開始を通知します。
protected  void processWarningOccurred(int imageIndex, String warning)
          登録されたすべての IIOWriteWarningListener に対し、その warningOccurred メソッドを呼び出すことで、警告メッセージを通知します。
protected  void processWarningOccurred(int imageIndex, String baseName, String keyword)
          登録されたすべての IIOWriteWarningListener に対し、ResourceBundle から取得した文字列を使用してその warningOccurred メソッドを呼び出すことで、ローカライズされた警告メッセージを通知します。
protected  void processWriteAborted()
          登録されたすべての IIOWriteProgressListener に対し、その writeAborted メソッドを呼び出すことで、書き込みが中止されたことを通知します。
 void removeAllIIOWriteProgressListeners()
          現在登録された IIOWriteProgressListener オブジェクトをすべて削除します。
 void removeAllIIOWriteWarningListeners()
          現在登録された IIOWriteWarningListener オブジェクトをすべて削除します。
 void removeIIOWriteProgressListener(IIOWriteProgressListener listener)
          登録された進捗リスナーのリストから、IIOWriteProgressListener を削除します。
 void removeIIOWriteWarningListener(IIOWriteWarningListener listener)
          登録された警告リスナーのリストから、IIOWriteWarningListener を削除します。
 void removeImage(int imageIndex)
          ストリームからイメージを削除します。
 void replaceImageMetadata(int imageIndex, IIOMetadata imageMetadata)
          既存イメージに関連付けられたイメージメタデータを置き換えます。
 void replacePixels(Raster raster, ImageWriteParam param)
          すでに出力内にあるイメージの一部を、指定された Raster の一部に置き換えます。
 void replacePixels(RenderedImage image, ImageWriteParam param)
          すでに出力内にあるイメージの一部を、指定されたイメージの一部に置き換えます。
 void replaceStreamMetadata(IIOMetadata streamMetadata)
          出力内のストリームメタデータを新規情報に置き換えます。
 void reset()
          ImageWriter を初期状態に復元します。
 void setLocale(Locale locale)
          この ImageWriter の現在の Locale を、指定された値に設定します。
 void setOutput(Object output)
          出力先を、指定された ImageOutputStream またはほかの Object に設定します。
 void write(IIOImage image)
          デフォルトメタデータとサムネールの付いた 1 つのイメージを含む、完全なイメージストリームを出力に追加します。
abstract  void write(IIOMetadata streamMetadata, IIOImage image, ImageWriteParam param)
          1 つのイメージ、関連付けられたストリームとイメージメタデータ、およびサムネールを含む完全なイメージストリームを出力に追加します。
 void write(RenderedImage image)
          デフォルトメタデータとサムネールの付いた 1 つのイメージから成る、完全なイメージストリームを出力に追加します。
 void writeInsert(int imageIndex, IIOImage image, ImageWriteParam param)
          既存イメージストリームに新規イメージを挿入します。
 void writeToSequence(IIOImage image, ImageWriteParam param)
          1 つのイメージと、関連付けられる可能性のあるメタデータとサムネールを、出力に追加します。
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

フィールドの詳細

originatingProvider

protected ImageWriterSpi originatingProvider
このオブジェクトをインスタンス化した ImageWriterSpi、あるいはその識別情報が存在しない、またはわからない場合、null になります。デフォルトでは、null に初期化されます。


output

protected Object output
ImageOutputStream または setOutput が設定して、getOutput が取り出したその他の Object です。デフォルトでは、null に初期化されます。


availableLocales

protected Locale[] availableLocales
警告メッセージと圧縮設定値をローカライズするために使用できる Locale の配列、またはローカライズ版がサポートされていない場合は null になります。デフォルトでは、null に初期化されます。


locale

protected Locale locale
ローカライズ版に使用する現在の Locale、または設定されていない場合は null です。デフォルトでは、null に初期化されます。


warningListeners

protected List<IIOWriteWarningListener> warningListeners
現在登録された IIOWriteWarningListenerList で、デフォルトでは null に初期化され、空の List と同じ意味になります。


warningLocales

protected List<Locale> warningLocales
warningListeners の各要素に対する LocaleList で、デフォルトでは null に初期化され、空の List と同じ意味になります。


progressListeners

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

コンストラクタの詳細

ImageWriter

protected ImageWriter(ImageWriterSpi originatingProvider)
ImageWriter を構築し、その originatingProvider インスタンス変数を、提供された値に設定します。

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

パラメータ:
originatingProvider - このオブジェクトを構築する ImageWriterSpi、 または null
メソッドの詳細

getOriginatingProvider

public ImageWriterSpi getOriginatingProvider()
この ImageWriter を作成した ImageWriterSpi オブジェクト、またはこのオブジェクトが IIORegistry を介して作成されたかった場合 null を返します。

デフォルト実装では、originatingProvider インスタンス変数の値を返します。

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

setOutput

public void setOutput(Object output)
出力先を、指定された ImageOutputStream またはほかの Object に設定します。出力先はデータを受け取る準備ができていると見なされ、各書き込みの終了時にクローズされません。これにより、分散イメージアプリケーションは、1 つのネットワーク接続上に一連のイメージを送信できます。outputnull の場合、現在設定されている出力はすべて削除されます。

outputImageOutputStream の場合、writewriteToSequenceprepareWriteEmpty/endWriteEmpty メソッドの呼び出しは、既存のストリーム内容を保持します。writeInsertreplaceStreamMetadatareplaceImageMetadatareplacePixelsprepareInsertEmpty/endInsertEmptyendWriteSequence のようなその他の書き込みメソッドは、完全なストリーム内容の読み込み、書き込みができることを要求し、ストリームの任意の部分を変更できます。

ImageOutputStream 以外の一般の Object は、出力装置またはイメージングプロトコルと直接対話する書き込み側のために使用されます。書き込み側のサービスプロバイダの getOutputTypes メソッドにより、正規のクラスのセットが公示され、ほとんどの書き込み側が、ImageOutputStream だけを受け入れることを示すために、ImageOutputStream.class だけを含む 1 つの要素の配列を返します。

デフォルト実装では、発信プロバイダが公示したクラスの設定があれば、これに output を照らし合わせたあと、output インスタンス変数を output の値に設定します。

パラメータ:
output - ImageOutputStream または 今後の書き込みに使用するほかの Object
例外:
IllegalArgumentException - output が、 発生元サービスプロバイダの getOutputTypes メソッドによって返された いずれかのクラスのインスタンスでない場合
関連項目:
getOutput()

getOutput

public Object getOutput()
ImageOutputStream または setOutput メソッドの最近の呼び出しで設定されたほかの Object を返します。出力先が設定されていない場合、null が返されます。

デフォルト実装では、output インスタンス変数の値を返します。

戻り値:
setOutput を使用して指定された Object、 または null
関連項目:
setOutput(java.lang.Object)

getAvailableLocales

public Locale[] getAvailableLocales()
警告リスナーと圧縮設定のローカライズに使用する Locale の配列を返します。戻り値 null は、ローカライズ版がサポートされていないことを示します。

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

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

setLocale

public void setLocale(Locale locale)
この ImageWriter の現在の Locale を、指定された値に設定します。値 null は、以前の設定をすべて削除し、書き込み側が適切にローカライズする必要があることを示します。

デフォルト実装では、localegetAvailableLocales が返した値と照らし合わせ、見つかれば locale インスタンス変数を設定します。localenull の場合、何のチェックもなしに、インスタンス変数は null に設定されます。

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

getLocale

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

デフォルト実装では、locale インスタンス変数の値を返します。

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

getDefaultWriteParam

public ImageWriteParam getDefaultWriteParam()
デフォルト値、つまり ImageWriteParam オブジェクトが指定されなかった場合に使用される値を含む、このファイル形式に適切な型の新規 ImageWriteParam オブジェクトを返します。これは、2、3 のパラメータだけを微調整するための起点として有効で、その他の場合はデフォルト設定のままにします。

デフォルト実装では、タイリング、プログレッシブエンコーディング、または圧縮を許可しない新規 ImageWriteParam オブジェクトを構築し、返します。現在の Locale (つまり、new ImageWriteParam(getLocale()) の呼び出しで取得するもの) でローカライズされます。

個々のプラグインは、追加のオプション機能を使用可能にして、ImageWriteParam のインスタンスを返すことができます。あるいは、ImageWriteParam のプラグイン固有サブクラスのインスタンスを返すことができます。

戻り値:
デフォルト値を含む新規 ImageWriteParam オブジェクト

getDefaultStreamMetadata

public abstract IIOMetadata getDefaultStreamMetadata(ImageWriteParam param)
イメージのストリームを符号化するためのデフォルト値を含む IIOMetadata オブジェクトを返します。オブジェクトの内容は、IIOMetadata.getAsTree メソッドが返した XML ツリー構造、IIOMetadataController オブジェクト、またはプラグイン固有のインタフェース経由のいずれかを使用して操作でき、その結果データは、ストリームメタデータパラメータをとる write メソッドの 1 つに提供できます。

ストリームメタデータの構造に影響を与える場合のために、オプションの ImageWriteParam を提供できます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

ストリームメタデータを使用しない書き込み側 (たとえば、1 つのイメージ形式のための書き込み側) は、null を返す必要があります。

パラメータ:
param - イメージの符号化に使用される ImageWriteParam、 または null
戻り値:
IIOMetadata オブジェクト

getDefaultImageMetadata

public abstract IIOMetadata getDefaultImageMetadata(ImageTypeSpecifier imageType,
                                                    ImageWriteParam param)
指定された型のイメージを符号化するためのデフォルト値を含む IIOMetadata オブジェクトを返します。オブジェクトの内容は、IIOMetadata.getAsTree メソッドが返した XML ツリー構造、IIOMetadataController オブジェクト、またはプラグイン固有のインタフェース経由のいずれかを使用して操作でき、その結果データは、ストリームメタデータパラメータをとる write メソッドの 1 つに提供できます。

イメージメタデータの構造に影響を与える場合のために、オプションの ImageWriteParam を提供できます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

パラメータ:
imageType - あとで書き込まれるイメージの形式を示す ImageTypeSpecifier
param - イメージの符号化に使用される ImageWriteParam、 または null
戻り値:
IIOMetadata オブジェクト

convertStreamMetadata

public abstract IIOMetadata convertStreamMetadata(IIOMetadata inData,
                                                  ImageWriteParam param)
インタフェース ImageTranscoder の記述:
符号化に使用でき、必要に応じて、ドキュメントインタフェースまたは符号化に使用する書き込み側プラグインに固有のほかのインタフェースを使用して変更できる、IIOMetadata オブジェクトを返します。

ストリームメタデータの構造に影響を与える場合のために、オプションの ImageWriteParam を提供できます。

提供された ImageWriteParam に、書き込み側または変換側が理解しないオプション設定値が含まれる場合、それらの設定値は無視されます。

定義:
インタフェース ImageTranscoder 内の convertStreamMetadata
パラメータ:
inData - ストリームメタデータを表し、 返されたオブジェクトの状態の初期化に使用される IIOMetadata オブジェクト
param - イメージの符号化に使用される ImageWriteParam、 または null
戻り値:
IIOMetadata オブジェクト、 またはプラグインがメタデータを符号化する機能を 提供しない場合は null

convertImageMetadata

public abstract IIOMetadata convertImageMetadata(IIOMetadata inData,
                                                 ImageTypeSpecifier imageType,
                                                 ImageWriteParam param)
インタフェース ImageTranscoder の記述:
符号化に使用でき、必要に応じて、ドキュメントインタフェースまたは符号化に使用する書き込み側プラグインに固有のほかのインタフェースを使用して変更できる、IIOMetadata オブジェクトを返します。

イメージメタデータの構造に影響を与える場合のために、オプションの ImageWriteParam を提供できます。

提供された ImageWriteParam に、書き込み側または変換側が理解しないオプション設定値が含まれる場合、それらの設定値は無視されます。

定義:
インタフェース ImageTranscoder 内の convertImageMetadata
パラメータ:
inData - イメージメタデータを表し、 返されたオブジェクトの状態の初期化に使用される IIOMetadata オブジェクト
imageType - メタデータに関連付けられるイメージの 配置と配色情報を示す ImageTypeSpecifier
param - イメージの符号化に使用される ImageWriteParam、 または null
戻り値:
IIOMetadata オブジェクト、 またはプラグインがメタデータを符号化する機能を 提供しない場合は null

getNumThumbnailsSupported

public int getNumThumbnailsSupported(ImageTypeSpecifier imageType,
                                     ImageWriteParam param,
                                     IIOMetadata streamMetadata,
                                     IIOMetadata imageMetadata)
符号化中に使用されるメタデータオブジェクトと任意の追加書き込みパラメータ、およびイメージ型を考慮して、書き込まれている形式でサポートされるサムネール数を返します。戻り値 -1 は、十分な情報を使用できないことを示します。

サムネイル処理に影響を与える場合のために、オプションとして ImageWriteParam を提供できます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

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

パラメータ:
imageType - 書き込まれるイメージ型を示す ImageTypeSpecifier、 または null
param - 書き込みに使用される ImageWriteParam、 または null
streamMetadata - 書き込みに使用される IIOMetadata オブジェクト、 または null
imageMetadata - 書き込みに使用される IIOMetadata オブジェクト、 または null
戻り値:
提供されたパラメータを考慮した、 書き込むことのできるサムネール数、 または十分な情報を使用できない場合は -1

getPreferredThumbnailSizes

public Dimension[] getPreferredThumbnailSizes(ImageTypeSpecifier imageType,
                                              ImageWriteParam param,
                                              IIOMetadata streamMetadata,
                                              IIOMetadata imageMetadata)
サムネールイメージが出力ファイルまたはストリーム中で符号化されるとき、その正規サイズの範囲を示す Dimension の配列を返します。この情報は単なる助言であり、書き込み側は、必要に応じて任意の提供されたサムネールのサイズを変更できます。

情報はペアで返されます。ペアの最初の要素には、包括的な最小の幅と高さが、次の要素には包括的な最大の幅と高さが含まれます。あわせて、各ペアはサイズの有効範囲を定義します。固定サイズを指定するには、両方の要素に同じ幅と高さを使用します。戻り値 null は、サイズが任意または不明であることを示します。

サムネイル処理に影響を与える場合のために、オプションとして ImageWriteParam を提供できます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

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

パラメータ:
imageType - 書き込まれるイメージ型を示す ImageTypeSpecifier、 または null
param - 書き込みに使用される ImageWriteParam、 または null
streamMetadata - 書き込みに使用される IIOMetadata オブジェクト、 または null
imageMetadata - 書き込みに使用される IIOMetadata オブジェクト、 または null
戻り値:
2 以上の同じ長さを持つ Dimension の配列、 または null

canWriteRasters

public boolean canWriteRasters()
IIOImage パラメータを取るメソッドが、(RenderedImage に対して) Raster ソースイメージを処理できる場合、true を返します。このメソッドが false を返す場合、これらのメソッドは、Raster を含む IIOImage が提供されるとき、 UnsupportedOperationException をスローします。

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

戻り値:
Raster ソースがサポートされる場合は true

write

public abstract void write(IIOMetadata streamMetadata,
                           IIOImage image,
                           ImageWriteParam param)
                    throws IOException
1 つのイメージ、関連付けられたストリームとイメージメタデータ、およびサムネールを含む完全なイメージストリームを出力に追加します。必要なヘッダー情報が含まれています。出力が ImageOutputStream の場合、現在のシーク位置以前の既存の内容は影響を受けず、読み込み可能または書き込み可能である必要はありません。

出力は、setOutput メソッドを使用して前もって設定されている必要があります。

ストリームメタデータがオプションで提供され、null の場合、デフォルトのストリームメタデータが使用されます。

canWriteRasterstrue を返す場合、IIOImageRaster ソースを含むことができます。そうでない場合は、RenderedImage ソースを含む必要があります。

提供されるサムネールは、必要であればサイズ変更され、サポートされる数を超過したサムネールは、すべて無視されます。提供されない追加のサムネールがその形式で必要な場合、書き込み側が内部で生成する必要があります。

書き込み処理を制御するために、ImageWriteParam をオプションで提供できます。paramnull の場合、デフォルトの書き込み param が使用されます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

パラメータ:
streamMetadata - ストリームメタデータを表す IIOMetadata オブジェクト、 またはデフォルト値を使用するための null
image - 書き込まれるイメージ、 サムネール、およびメタデータを含む IIOImage オブジェクト
param - ImageWriteParam、 またはデフォルト ImageWriteParam を 使用するための null
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - imageRaster を含み、canWriteRastersfalse を返す場合
IllegalArgumentException - imagenull の場合
IOException - 書き込み中にエラーが発生した場合

write

public void write(IIOImage image)
           throws IOException
デフォルトメタデータとサムネールの付いた 1 つのイメージを含む、完全なイメージストリームを出力に追加します。このメソッドは、write(null, image, null) の短縮形です。

パラメータ:
image - 書き込まれるイメージ、 サムネール、およびメタデータを含む IIOImage オブジェクト
例外:
IllegalStateException - 出力が設定されていない 場合
IllegalArgumentException - imagenull の場合
UnsupportedOperationException - imageRaster を含み、canWriteRastersfalse を返す場合
IOException - 書き込み中にエラーが発生した場合

write

public void write(RenderedImage image)
           throws IOException
デフォルトメタデータとサムネールの付いた 1 つのイメージから成る、完全なイメージストリームを出力に追加します。このメソッドは、write(null, new IIOImage(image, null, null), null) の短縮形です。

パラメータ:
image - 書き込まれる RenderedImage
例外:
IllegalStateException - 出力が設定されていない 場合
IllegalArgumentException - imagenull の場合
IOException - 書き込み中にエラーが発生した場合

canWriteSequence

public boolean canWriteSequence()
すでにヘッダー情報を含み、以前のイメージである可能性を持つイメージストリームに、書き込み側がイメージを追加できる場合、true を返します。

canWriteSequencefalse を返す場合、writeToSequenceendWriteSequenceUnsupportedOperationException をスローします。

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

戻り値:
イメージを連続して追加できる場合 true

prepareWriteSequence

public void prepareWriteSequence(IIOMetadata streamMetadata)
                          throws IOException
次に続く一連の writeToSequence 呼び出しを受け付けるために、提供されるストリームメタデータオブジェクトを使用して、ストリームを準備します。メタデータがイメージデータに先行する必要がある場合、このメタデータはストリームに書き込まれます。引数が null の場合、デフォルトストリームメタデータが使用されます。

出力が ImageOutputStream の場合、現在のシーク位置以前の既存の出力内容はフラッシュされ、読み込み可能または書き込み可能である必要はありません。その形式で、1 つの TIFF ファイル内の一連のイメージのように、ヘッダー情報を補修するために endWriteSequence が巻き戻しできることが必要な場合、このメソッドで書き込まれるメタデータは、ストリームの書き込み可能部分に存在する必要があります。ほかの形式は、このメソッドと各イメージのあとで、ストリームをフラッシュできます。

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

出力は、setOutput メソッドを使用して前もって設定されている必要があります。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
streamMetadata - ストリームメタデータオブジェクト、または null
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canWriteSequencefalse を返す場合
IOException - ストリームメタデータの書き込みで エラーが発生した場合

writeToSequence

public void writeToSequence(IIOImage image,
                            ImageWriteParam param)
                     throws IOException
1 つのイメージと、関連付けられる可能性のあるメタデータとサムネールを、出力に追加します。出力が ImageOutputStream の場合、現在のシーク位置以前の既存の出力内容はフラッシュされ、endWriteSequence が呼び出される (たとえば TIFF) ときに、プラグインがヘッダー情報を補修できる必要がある場合を除き、読み込み可能または書き込み可能である必要はありません。

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

出力は、setOutput メソッドを使用して前もって設定されている必要があります。

前もって prepareWriteSequence が呼び出されている必要があり、そうでない場合 IllegalStateException がスローされます。

canWriteRasterstrue を返す場合、IIOImageRaster ソースを含むことができます。そうでない場合は、RenderedImage ソースを含む必要があります。

提供されるサムネールは、必要であればサイズ変更され、サポートされる数を超過したサムネールは、すべて無視されます。提供されない追加のサムネールがその形式で必要な場合、書き込み側が内部で生成します。

書き込み処理を制御するために、ImageWriteParam をオプションで提供できます。paramnull の場合、デフォルトの書き込み param が使用されます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
image - 書き込まれるイメージ、 サムネール、およびメタデータを含む IIOImage オブジェクト
param - ImageWriteParam、 またはデフォルト ImageWriteParam を 使用するための null
例外:
IllegalStateException - 出力が設定されていなかったか、 prepareWriteSequence が呼び出されていなかった場合
UnsupportedOperationException - canWriteSequencefalse を返す場合
IllegalArgumentException - imagenull の場合
UnsupportedOperationException - imageRaster を含み、canWriteRastersfalse を返す場合
IOException - 書き込み中にエラーが発生した場合

endWriteSequence

public void endWriteSequence()
                      throws IOException
prepareWriteSequence で始まる一連のイメージの書き込みを完了します。イメージの処理の最後に来るストリームメタデータはすべて書き出され、処理の最初のヘッダー情報は、必要であればすべて補修されます。出力が ImageOutputStream の場合、処理の最後でストリームメタデータを通過したデータはフラッシュされ、読み込み可能または書き込み可能である必要はありません。

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

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

例外:
IllegalStateException - 出力が設定されていなかったか、 prepareWriteSequence が呼び出されていなかった場合
UnsupportedOperationException - canWriteSequencefalse を返す場合
IOException - 書き込み中にエラーが発生した場合

canReplaceStreamMetadata

public boolean canReplaceStreamMetadata()
                                 throws IOException
すでに出力に存在するストリームメタデータを置き換えられる場合、true を返します。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、false を返します。

戻り値:
ストリームメタデータの置き換えが許可される場合 true
例外:
IllegalStateException - 出力が設定されていない 場合
IOException - 照会中に入出力エラーが発生した場合

replaceStreamMetadata

public void replaceStreamMetadata(IIOMetadata streamMetadata)
                           throws IOException
出力内のストリームメタデータを新規情報に置き換えます。出力が ImageOutputStream の場合、以前のストリーム内容が調べられ、可能なかぎり編集されて、新規データのための場所を作ります。以前の出力内容はすべて、読み込みと書き込みのために使用できる必要があります。

canReplaceStreamMetadatafalse を返す場合、UnsupportedOperationException がスローされます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
streamMetadata - ストリームメタデータを表す IIOMetadata オブジェクト、 またはデフォルト値を使用するための null
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canReplaceStreamMetadatafalse を返す場合。 モードは含まない
IOException - 書き込み中にエラーが発生した場合

canReplaceImageMetadata

public boolean canReplaceImageMetadata(int imageIndex)
                                throws IOException
既存のイメージに関連付けられたイメージメタデータを、インデックス imageIndex に置き換えることができる場合、true を返します。このメソッドが false を返す場合、replaceImageMetadata(imageIndex) の呼び出しは UnsupportedOperationException をスローします。

イメージメタデータの置き換えをサポートしない書き込み側は、インデックス上での範囲のチェックを実行せずに false を返すことができます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、imageIndex の値をチェックせずに false を返します。

パラメータ:
imageIndex - メタデータが置き換えられるイメージの インデックス
戻り値:
指定されたイメージのイメージメタデータが 置き換えできる場合 true
例外:
IllegalStateException - 出力が設定されていない 場合
IndexOutOfBoundsException - 一般に、書き込み側が イメージメタデータの置き換えをサポートし、 imageIndex が 0 未満、 または使用可能な最大のインデックスより大きい場合
IOException - 照会中に入出力エラーが発生した場合

replaceImageMetadata

public void replaceImageMetadata(int imageIndex,
                                 IIOMetadata imageMetadata)
                          throws IOException
既存イメージに関連付けられたイメージメタデータを置き換えます。

canReplaceImageMetadata(imageIndex)false を返す場合、UnsupportedOperationException がスローされます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
imageIndex - メタデータが置き換えられるイメージの インデックス
imageMetadata - イメージメタデータを表す IIOMetadata オブジェクト、 または null
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canReplaceImageMetadatafalse を返す 場合
IndexOutOfBoundsException - imageIndex が 0 未満、または使用可能な最大インデックスより大きい場合
IOException - 書き込み中にエラーが発生した場合

canInsertImage

public boolean canInsertImage(int imageIndex)
                       throws IOException
指定されたインデックスでの新規イメージの挿入を書き込み側がサポートする場合、true を返します。挿入インデックス以上のインデックスを持つ既存イメージは、自らのインデックスに 1 を加えます。 imageIndex の値 -1 は、現在の最大インデックスより 1 大きいインデックスを表すために使用できます。

イメージ挿入をサポートしない書き込み側は、インデックス上での範囲チェックを実行せずに false を返すことができます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、imageIndex の値をチェックせずに false を返します。

パラメータ:
imageIndex - イメージが挿入される インデックス
戻り値:
指定されたインデックスでイメージを挿入できる場合 true
例外:
IllegalStateException - 出力が設定されていない 場合
IndexOutOfBoundsException - 一般に、書き込み側が イメージ挿入をサポートし、imageIndex が -1 未満、 または使用可能な最大インデックスより大きい場合
IOException - 照会中に入出力エラーが発生した場合

writeInsert

public void writeInsert(int imageIndex,
                        IIOImage image,
                        ImageWriteParam param)
                 throws IOException
既存イメージストリームに新規イメージを挿入します。imageIndex より大きいインデックスを持つ既存イメージが保持され、そのインデックスには、それぞれ 1 が加えられます。imageIndex の値 -1 は、以前の最大インデックスより 1 大きいインデックスを表すために使用できます。つまり、これにより、イメージが論理的に、処理の最後に追加されます。出力が ImageOutputStream の場合、ストリーム全体は、読み込み可能と書き込み可能の両方である必要があります。

canInsertImage(imageIndex)false を返す場合、UnsupportedOperationException がスローされます。

書き込み処理を制御するために、ImageWriteParam をオプションで提供できます。paramnull の場合、デフォルトの書き込み param が使用されます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
imageIndex - イメージが書き込まれるインデックス
image - 書き込まれるイメージ、 サムネール、およびメタデータを含む IIOImage オブジェクト
param - ImageWriteParam、 またはデフォルト ImageWriteParam を 使用するための null
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canInsertImage(imageIndex)false を返す場合
IllegalArgumentException - imagenull の場合
IndexOutOfBoundsException - imageIndex が -1 未満、または使用可能な最大インデックスより大きい場合
UnsupportedOperationException - imageRaster を含み、canWriteRastersfalse を返す場合
IOException - 書き込み中にエラーが発生した場合

canRemoveImage

public boolean canRemoveImage(int imageIndex)
                       throws IOException
書き込み側が、指定されたインデックスでの既存イメージの削除をサポートする場合、true を返します。挿入インデックスより大きいインデックスを持つ既存イメージは、自らのインデックスから 1 を引きます。

イメージ削除をサポートしない書き込み側は、インデックス上での範囲チェックを実行せずに false を返すことができます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、imageIndex の値をチェックせずに false を返します。

パラメータ:
imageIndex - 削除されるイメージのインデックス
戻り値:
指定されたイメージを削除できる場合は true
例外:
IllegalStateException - 出力が設定されていない 場合
IndexOutOfBoundsException - 一般に、書き込み側が イメージ削除をサポートし、imageIndex が 0 未満、 または使用可能な最大インデックスより大きい場合
IOException - 照会中に入出力エラーが発生した 場合

removeImage

public void removeImage(int imageIndex)
                 throws IOException
ストリームからイメージを削除します。

canRemoveImage(imageIndex) が false を返す場合、UnsupportedOperationException がスローされます。

削除により、実際のファイルサイズが縮小される場合とされない場合があります。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
imageIndex - 削除されるイメージのインデックス
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canRemoveImage(imageIndex)false を返す場合
IndexOutOfBoundsException - imageIndex が 0 未満、または使用可能な最大インデックスより大きい場合
IOException - 削除中に入出力エラーが発生した 場合

canWriteEmpty

public boolean canWriteEmpty()
                      throws IOException
未定義のピクセル値を持つ 1 つのイメージと、関連付けられたメタデータとサムネールから成る、完全なイメージストリームの出力への書き込みを書き込み側がサポートする場合、true を返します。ピクセル値は、replacePixels メソッドの今後の呼び出しで定義できます。出力が ImageOutputStream の場合、現在のシーク位置以前の既存の内容は影響を受けず、読み込み可能または書き込み可能である必要はありません。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、false を返します。

戻り値:
あとで定義される内容を持つ完全なイメージストリームの 書き込みがサポートされる場合は true
例外:
IllegalStateException - 出力が設定されていない 場合
IOException - 照会中に入出力エラーが発生した 場合

prepareWriteEmpty

public void prepareWriteEmpty(IIOMetadata streamMetadata,
                              ImageTypeSpecifier imageType,
                              int width,
                              int height,
                              IIOMetadata imageMetadata,
                              List<? extends BufferedImage> thumbnails,
                              ImageWriteParam param)
                       throws IOException
未定義のピクセル値を持つ 1 つのイメージと、関連付けられたメタデータとサムネールから成る、完全なイメージストリームの出力への書き込みを開始します。ピクセル値は、replacePixels メソッドの今後の呼び出しで定義されます。出力が ImageOutputStream の場合、現在のシーク位置以前の既存の内容は影響を受けず、読み込み可能または書き込み可能である必要はありません。

endWriteEmpty の呼び出しが発生するまで、書き込みは完全ではありません。prepareWriteEmptyendWriteEmpty の呼び出しの間に、prepareReplacePixelsreplacePixels、および endReplacePixels の呼び出しが発生します。ただし、prepareWriteEmpty の呼び出しは入れ子にできず、prepareWriteEmptyprepareInsertEmpty の呼び出しは挿入できません。

canWriteEmptyfalse を返す場合、UnsupportedOperationException がスローされます。

書き込み処理を制御するために、ImageWriteParam をオプションで提供できます。paramnull の場合、デフォルトの書き込み param が使用されます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
streamMetadata - ストリームメタデータを表す IIOMetadata オブジェクト、 またはデフォルト値を使用するための null
imageType - イメージの配置を記述する ImageTypeSpecifier
width - イメージの幅
height - イメージの高さ
imageMetadata - イメージメタデータを表す IIOMetadata オブジェクト、 または null
thumbnails - このイメージのための BufferedImage サムネールの List、 または null
param - ImageWriteParam、 またはデフォルト ImageWriteParam を 使用するための null
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canWriteEmptyfalse を返す場合
IllegalStateException - 対応する endWriteEmpty の呼び出しなしに、 先行する prepareWriteEmpty の 呼び出しが生成された場合
IllegalStateException - 対応する endInsertEmpty の呼び出しなしに、 先行する prepareInsertEmpty の 呼び出しが生成された場合
IllegalArgumentException - imageTypenull、 あるいは thumbnailsnull 参照、 または BufferedImage 以外のオブジェクトを含む場合
IllegalArgumentException - 幅または高さが 1 より 小さい場合
IOException - 書き込み中に入出力エラーが発生した場合

endWriteEmpty

public void endWriteEmpty()
                   throws IOException
以前の prepareWriteEmpty の呼び出しで始まった、新規イメージの書き込みを完了します。

canWriteEmpty()false を返す場合、UnsupportedOperationException がスローされます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canWriteEmpty(imageIndex)false を 返す場合
IllegalStateException - 対応する endWriteEmpty の呼び出しなしで、 先行する prepareWriteEmpty の 呼び出しが生成されなかった場合
IllegalStateException - 対応する endInsertEmpty の呼び出しなしで、 先行する prepareInsertEmpty の 呼び出しが生成された場合
IllegalStateException - 対応する endReplacePixels の呼び出しなしに、 prepareReiplacePixels の 呼び出しが生成された場合
IOException - 書き込み中に入出力エラーが発生した場合

canInsertEmpty

public boolean canInsertEmpty(int imageIndex)
                       throws IOException
指定されたインデックスでの新規の空イメージの挿入を書き込み側がサポートする場合、true を返します。イメージのピクセル値は未定義で、replacePixels メソッドを使用して細かく指定できます。挿入インデックス以上のインデックスを持つ既存イメージは、自らのインデックスに 1 を加えます。 imageIndex の値 -1 は、現在の最大インデックスより 1 大きいインデックスを表すために使用できます。

空イメージの挿入をサポートしない書き込み側は、インデックス上での範囲チェックを実行せずに false を返すことができます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、imageIndex の値をチェックせずに false を返します。

パラメータ:
imageIndex - イメージが挿入される インデックス
戻り値:
指定されたインデックスで空イメージを挿入できる場合は true
例外:
IllegalStateException - 出力が設定されていない 場合
IndexOutOfBoundsException - 一般に、書き込み側が 空イメージの挿入をサポートし、imageIndex が -1 未満、 または使用可能な最大インデックスより大きい場合
IOException - 照会中に入出力エラーが発生した 場合

prepareInsertEmpty

public void prepareInsertEmpty(int imageIndex,
                               ImageTypeSpecifier imageType,
                               int width,
                               int height,
                               IIOMetadata imageMetadata,
                               List<? extends BufferedImage> thumbnails,
                               ImageWriteParam param)
                        throws IOException
未定義のピクセル値を持つ新規イメージの、既存イメージストリームへの挿入を開始します。imageIndex より大きいインデックスを持つ既存イメージが保持され、そのインデックスには、それぞれ 1 が加えられます。imageIndex の値 -1 は、以前の最大インデックスより 1 大きいインデックスを表すために使用できます。つまり、これにより、イメージが論理的に、処理の最後に追加されます。出力が ImageOutputStream の場合、ストリーム全体は、読み込み可能と書き込み可能の両方である必要があります。

イメージの内容は、replacePixels メソッドを使用してあとで提供できます。endInsertEmpty の呼び出しが発生するまで、挿入は完全ではありません。prepareReplacePixelsreplacePixelsendReplacePixels の呼び出しは、prepareInsertEmptyendInsertEmpty の呼び出しの間に発生します。ただし、prepareInsertEmpty の呼び出しは入れ子にできず、prepareWriteEmptyprepareInsertEmpty の呼び出しは挿入できません。

canInsertEmpty(imageIndex)false を返す場合、UnsupportedOperationException がスローされます。

書き込み処理を制御するために、ImageWriteParam をオプションで提供できます。paramnull の場合、デフォルトの書き込み param が使用されます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
imageIndex - イメージが書き込まれるインデックス
imageType - イメージの配置を記述する ImageTypeSpecifier
width - イメージの幅
height - イメージの高さ
imageMetadata - イメージメタデータを表す IIOMetadata オブジェクト、 または null
thumbnails - このイメージのための BufferedImage サムネールの List、 または null
param - ImageWriteParam、 またはデフォルト ImageWriteParam を 使用するための null
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canInsertEmpty(imageIndex)false を 返す場合
IndexOutOfBoundsException - imageIndex が -1 未満、 または使用可能な最大インデックスより大きい場合
IllegalStateException - 対応する endInsertEmpty の呼び出しなしで、 先行する prepareInsertEmpty の 呼び出しが生成された場合
IllegalStateException - 対応する endWriteEmpty の呼び出しなしで、 先行する prepareWriteEmpty の 呼び出しが生成された場合
IllegalArgumentException - imageTypenull、 あるいは thumbnailsnull 参照、 または BufferedImage 以外のオブジェクトを含む場合
IllegalArgumentException - 幅または高さが 1 より 小さい場合
IOException - 書き込み中に入出力エラーが発生した場合

endInsertEmpty

public void endInsertEmpty()
                    throws IOException
以前の prepareInsertEmpty の呼び出しで始まった、新規イメージの挿入を完了します。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canInsertEmpty(imageIndex)false を 返す場合
IllegalStateException - 対応する endInsertEmpty の呼び出しなしで、 先行する prepareInsertEmpty の 呼び出しが生成されなかった場合
IllegalStateException - 対応する endWriteEmpty の呼び出しなしで、 先行する prepareWriteEmpty の 呼び出しが生成された場合
IllegalStateException - 対応する endReplacePixels の呼び出しなしに、 prepareReplacePixels の 呼び出しが生成された場合
IOException - 書き込み中に入出力エラーが発生した場合

canReplacePixels

public boolean canReplacePixels(int imageIndex)
                         throws IOException
書き込み側で、replacePixels メソッドを使用して、指定されたイメージのピクセルの置き換えを許可する場合、true を返します。

ピクセルの置き換えをサポートしない書き込み側は、インデックス上での範囲チェックを実行せずに false を返すことができます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、imageIndex の値をチェックせずに false を返します。

パラメータ:
imageIndex - ピクセルが置き換えられるイメージの インデックス
戻り値:
指定されたイメージのピクセルを置き換えることができる場合は true
例外:
IllegalStateException - 出力が設定されていない 場合
IndexOutOfBoundsException - 一般に、書き込み側が ピクセルの置き換えをサポートし、imageIndex が 0 未満、 または使用可能な最大インデックスより大きい場合
IOException - 照会中に入出力エラーが発生した場合

prepareReplacePixels

public void prepareReplacePixels(int imageIndex,
                                 Rectangle region)
                          throws IOException
replacePixels メソッドの一連の呼び出しを処理するために、書き込み側を準備します。影響を受けるピクセル領域は、提供された領域に対してクリップされます。

canReplacePixelsfalse を返し、UnsupportedOperationException がスローされる場合です。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
imageIndex - ピクセルが置き換えられるイメージの インデックス
region - あとのピクセル範囲のクリッピングに使用される Rectangle
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canReplacePixels(imageIndex)false を 返す場合
IndexOutOfBoundsException - imageIndex が 0 未満、 または使用可能な最大インデックスより大きい場合
IllegalStateException - 対応する endReplacePixels の呼び出しなしに、 先行する prepareReplacePixels の の呼び出しがある (つまり、入れ子が許可されない) 場合
IllegalArgumentException - regionnull、 または 1 未満の幅または高さを持つ場合
IOException - 準備中に入出力エラーが発生した 場合

replacePixels

public void replacePixels(RenderedImage image,
                          ImageWriteParam param)
                   throws IOException
すでに出力内にあるイメージの一部を、指定されたイメージの一部に置き換えます。イメージデータは、既存イメージのイメージ配置と一致するか、または置き換えられる必要があります。

出力先範囲は param 引数で指定され、イメージ範囲にクリップされて、その範囲は prepareReplacePixels に提供されます。少なくともソースの 1 つのピクセルは、クリップしてはいけません。そうしないと、例外がスローされます。

書き込み処理を制御するために、ImageWriteParam をオプションで提供できます。paramnull の場合、デフォルトの書き込み param が使用されます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

メソッドは、prepareReplacePixels の呼び出し後にのみ呼び出すことができ、そうでない場合 IllegalStateException がスローされます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
image - ソースピクセルを含む RenderedImage
param - ImageWriteParam、 またはデフォルト ImageWriteParam を 使用するための null
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canReplacePixels(imageIndex)false を 返す場合
IllegalStateException - 対応する endReplacePixels の呼び出しなしで、 先行する prepareReplacePixels の 呼び出しがない場合
IllegalArgumentException - 次のいずれかに当てはまる場合
  • imagenull である。
  • paramnull である。
  • 交差した範囲にピクセルが 1 つも含まれない。
  • image の配置が既存のイメージ配置に一致しないか、 この書き込み側で配置を既存のイメージ配置に置き換えられない。
IOException - 書き込み中に入出力エラーが発生した場合

replacePixels

public void replacePixels(Raster raster,
                          ImageWriteParam param)
                   throws IOException
すでに出力内にあるイメージの一部を、指定された Raster の一部に置き換えます。イメージデータは、既存イメージのイメージ配置と一致するか、または置き換えられる必要があります。

書き込み処理を制御するために、ImageWriteParam をオプションで提供できます。paramnull の場合、デフォルトの書き込み param が使用されます。

出力先範囲は param 引数で指定され、イメージ範囲にクリップされて、その範囲は prepareReplacePixels に提供されます。少なくともソースの 1 つのピクセルは、クリップしてはいけません。そうしないと、例外がスローされます。

指定された ImageWriteParam に、この書き込み側がサポートしないオプション設定値 (プログレッシブエンコーディングや形式固有の設定など) が含まれる場合、それらは無視されます。

メソッドは、prepareReplacePixels の呼び出し後にのみ呼び出すことができ、そうでない場合 IllegalStateException がスローされます。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

パラメータ:
raster - ソースピクセルを含む Raster
param - ImageWriteParam、 またはデフォルト ImageWriteParam を 使用するための null
例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canReplacePixels(imageIndex)false を 返す場合
IllegalStateException - 対応する endReplacePixels の呼び出しなしで、 先行する prepareReplacePixels の 呼び出しがない場合
UnsupportedOperationException - canWriteRastersfalse を返す場合
IllegalArgumentException - 次のいずれかに当てはまる場合
  • rasternull である。
  • paramnull である。
  • 交差した範囲にピクセルが 1 つも含まれない。
  • raster の配置が既存のイメージ配置に一致しないか、 この書き込み側で配置を既存のイメージ配置に置き換えられない。
IOException - 書き込み中に入出力エラーが発生した場合

endReplacePixels

public void endReplacePixels()
                      throws IOException
replacePixels の呼び出し処理を終了します。

canReplacePixelsfalse を返し、UnsupportedOperationException がスローされる場合です。

出力が null の場合、デフォルト実装は IllegalStateException をスローし、そうでない場合は、UnsupportedOperationException をスローします。

例外:
IllegalStateException - 出力が設定されていない 場合
UnsupportedOperationException - canReplacePixels(imageIndex)false を 返す場合
IllegalStateException - 対応する endReplacePixels の呼び出しなしで、 先行する prepareReplacePixels の 呼び出しがない場合
IOException - 書き込み中に入出力エラーが発生した場合

abort

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

書き込み側は、各書き込み操作の始めに clearAbortRequest を呼び出し、書き込み中に定期的に abortRequested の値をポーリングする必要があります。


abortRequested

protected boolean abortRequested()
書き込み側がインスタンス化された、または clearAbortRequest が呼び出されたために、現在の書き込み操作の中止要求が出された場合、true を返します。

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

clearAbortRequest

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

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

addIIOWriteWarningListener

public void addIIOWriteWarningListener(IIOWriteWarningListener listener)
登録された警告リスナーのリストに IIOWriteWarningListener を追加します。listenernull の場合、例外はスローされず、何も処理は行われません。指定されたリスナーに送られたメッセージは、可能であれば、現在の Locale に合うようにローカライズされます。Locale が設定されていない場合は、書き込み側に適合するよう警告メッセージをローカライズできます。

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

removeIIOWriteWarningListener

public void removeIIOWriteWarningListener(IIOWriteWarningListener listener)
登録された警告リスナーのリストから、IIOWriteWarningListener を削除します。リスナーが前もって登録されなかった場合、または listenernull の場合、例外はスローされず、何も処理は行われません。

パラメータ:
listener - 登録を取り消される IIOWriteWarningListener
関連項目:
addIIOWriteWarningListener(javax.imageio.event.IIOWriteWarningListener)

removeAllIIOWriteWarningListeners

public void removeAllIIOWriteWarningListeners()
現在登録された IIOWriteWarningListener オブジェクトをすべて削除します。

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


addIIOWriteProgressListener

public void addIIOWriteProgressListener(IIOWriteProgressListener listener)
登録された進捗リスナーのリストに IIOWriteProgressListener を追加します。listenernull の場合、例外はスローされず、何も処理は行われません。

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

removeIIOWriteProgressListener

public void removeIIOWriteProgressListener(IIOWriteProgressListener listener)
登録された進捗リスナーのリストから、IIOWriteProgressListener を削除します。リスナーが前もって登録されなかった場合、または listenernull の場合、例外はスローされず、何も処理は行われません。

パラメータ:
listener - 登録を取り消される IIOWriteProgressListener
関連項目:
addIIOWriteProgressListener(javax.imageio.event.IIOWriteProgressListener)

removeAllIIOWriteProgressListeners

public void removeAllIIOWriteProgressListeners()
現在登録された IIOWriteProgressListener オブジェクトをすべて削除します。

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


processImageStarted

protected void processImageStarted(int imageIndex)
登録されたすべての IIOWriteProgressListener に対し、その imageStarted メソッドを呼び出すことで、イメージ書き込みの開始を通知します。サブクラスは、必要に応じてこのメソッドを使用できます。

パラメータ:
imageIndex - 書き込まれようとしているイメージのインデックス

processImageProgress

protected void processImageProgress(float percentageDone)
登録されたすべての IIOWriteProgressListener に対し、その imageProgress メソッドを呼び出すことで、イメージ完成の現在の割合を通知します。サブクラスは、必要に応じてこのメソッドを使用できます。

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

processImageComplete

protected void processImageComplete()
登録されたすべての IIOWriteProgressListener に対し、その imageComplete メソッドを呼び出すことで、イメージ書き込みの完了を通知します。サブクラスは、必要に応じてこのメソッドを使用できます。


processThumbnailStarted

protected void processThumbnailStarted(int imageIndex,
                                       int thumbnailIndex)
登録されたすべての IIOWriteProgressListener に対し、その thumbnailStarted メソッドを呼び出すことで、サムネール書き込みの開始を通知します。サブクラスは、必要に応じてこのメソッドを使用できます。

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

processThumbnailProgress

protected void processThumbnailProgress(float percentageDone)
登録されたすべての IIOWriteProgressListener に対し、その thumbnailProgress メソッドを呼び出すことで、サムネール完成の現在の割合を通知します。サブクラスは、必要に応じてこのメソッドを使用できます。

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

processThumbnailComplete

protected void processThumbnailComplete()
登録されたすべての IIOWriteProgressListener に対し、その thumbnailComplete メソッドを呼び出すことで、サムネール書き込みの完了を通知します。サブクラスは、必要に応じてこのメソッドを使用できます。


processWriteAborted

protected void processWriteAborted()
登録されたすべての IIOWriteProgressListener に対し、その writeAborted メソッドを呼び出すことで、書き込みが中止されたことを通知します。サブクラスは、必要に応じてこのメソッドを使用できます。


processWarningOccurred

protected void processWarningOccurred(int imageIndex,
                                      String warning)
登録されたすべての IIOWriteWarningListener に対し、その warningOccurred メソッドを呼び出すことで、警告メッセージを通知します。サブクラスは、必要に応じてこのメソッドを使用できます。

パラメータ:
imageIndex - 警告が発生するイメージの インデックス
warning - 警告メッセージ
例外:
IllegalArgumentException - warningnull の場合

processWarningOccurred

protected void processWarningOccurred(int imageIndex,
                                      String baseName,
                                      String keyword)
登録されたすべての IIOWriteWarningListener に対し、ResourceBundle から取得した文字列を使用してその warningOccurred メソッドを呼び出すことで、ローカライズされた警告メッセージを通知します。サブクラスは、必要に応じてこのメソッドを使用できます。

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

reset

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

デフォルト実装では、setOutput(null)setLocale(null)removeAllIIOWriteWarningListeners()removeAllIIOWriteProgressListeners()clearAbortRequest を呼び出します。


dispose

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

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

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


JavaTM Platform
Standard Ed. 6

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

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