- java.lang.Object
-
- javax.imageio.ImageWriter
-
- すべての実装されたインタフェース:
ImageTranscoder
public abstract class ImageWriter extends Object implements ImageTranscoder
エンコードとイメージの書込みのための抽象スーパー・クラスです。 Java Image I/Oフレームワークのコンテキスト内で、イメージを書き出すクラスが、このクラスをサブクラス化する必要があります。ImageWriter
オブジェクトは通常、特定形式のためのサービス・プロバイダ・クラスによりインスタンス化されます。 サービス・プロバイダ・クラスはIIORegistry
に登録され、形式を識別し、使用可能な形式の読取り側と書込み側を提示するために使用されます。
-
-
フィールドのサマリー
フィールド 修飾子と型 フィールド 説明 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
現在登録されているIIOWriteProgressListener
のList
で、デフォルトではnull
に初期化され、空のList
と同じ意味になります。protected List<IIOWriteWarningListener>
warningListeners
現在登録されている各IIOWriteWarningListener
のList
です。デフォルトではnull
に初期化され、空のList
と同じ意味になります。protected List<Locale>
warningLocales
warningListeners
の各要素に対するLocale
のList
で、デフォルトでは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()
以前の中断リクエストをクリアします。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)
warningOccurred
メソッドを呼び出すことで、警告メッセージを、登録されたすべてのIIOWriteWarningListener
に通知します。protected void
processWarningOccurred(int imageIndex, String baseName, String keyword)
ResourceBundle
から取得した文字列を持つwarningOccurred
メソッドを呼び出すことで、ローカライズされた警告メッセージを、登録されたすべてのIIOWriteWarningListener
に通知します。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(RenderedImage image)
デフォルト・メタデータとサムネールの付いた1つのイメージから成る、完全なイメージ・ストリームを出力に追加します。void
write(IIOImage image)
デフォルト・メタデータとサムネールの付いた1つのイメージを含む、完全なイメージ・ストリームを出力に追加します。abstract void
write(IIOMetadata streamMetadata, IIOImage image, ImageWriteParam param)
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
-
インタフェース javax.imageio.ImageTranscoderで宣言されたメソッド
convertImageMetadata, convertStreamMetadata
-
-
-
-
フィールドの詳細
-
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
現在登録されている各IIOWriteWarningListener
のList
です。デフォルトではnull
に初期化され、空のList
と同じ意味になります。
-
warningLocales
protected List<Locale> warningLocales
warningListeners
の各要素に対するLocale
のList
で、デフォルトではnull
に初期化され、空のList
と同じ意味になります。
-
progressListeners
protected List<IIOWriteProgressListener> progressListeners
現在登録されているIIOWriteProgressListener
のList
で、デフォルトでは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つのネットワーク接続上に一連のイメージを送信できます。output
がnull
の場合、現在設定されている出力はすべて削除されます。output
がImageOutputStream
の場合、write
、writeToSequence
、prepareWriteEmpty
/endWriteEmpty
メソッドの呼出しは、既存のストリーム内容を保持します。writeInsert
、replaceStreamMetadata
、replaceImageMetadata
、replacePixels
、prepareInsertEmpty
/endInsertEmpty
、endWriteSequence
のようなその他の書込みメソッドは、完全なストリーム内容の読み込み、書込みができることを要求し、ストリームの任意の部分を変更できます。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
を返します。- 戻り値:
setLocale
の引数として使用するLocale
の配列、またはnull
。
-
setLocale
public void setLocale(Locale locale)
このImageWriter
の現在のLocale
を、指定された値に設定します。 値null
は、以前の設定を削除して、書込み側が適切にローカライズする必要があることを示します。デフォルト実装では、
locale
をgetAvailableLocales
が返した値と照らし合わせ、見つかればlocale
インスタンス変数を設定します。locale
がnull
の場合、何のチェックもなしに、インスタンス変数はnull
に設定されます。- パラメータ:
locale
- 目的のLocale
、またはnull
。- 例外:
IllegalArgumentException
-locale
がnull
ではないが、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
オブジェクト。
-
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
の場合、デフォルトのストリーム・メタデータが使用されます。canWriteRasters
がtrue
を返す場合、IIOImage
はRaster
ソースを含むことができます。 それ以外の場合は、RenderedImage
ソースを含む必要があります。提供されるサムネールは、必要であればサイズ変更され、サポートされる数を超過したサムネールは、すべて無視されます。 提供されない追加のサムネールがその形式で必要な場合、書込み側が内部で生成する必要があります。
書込み処理を制御するために、
ImageWriteParam
をオプションで提供できます。param
がnull
の場合、デフォルトの書き込みparamが使用されます。指定された
ImageWriteParam
に、この書込み側がサポートしないオプション設定値(たとえば、プログレッシブ・エンコーディングや形式固有の設定)が含まれる場合、それらは無視されます。- パラメータ:
streamMetadata
- ストリーム・メタデータを表すIIOMetadata
オブジェクト、またはデフォルト値を使用するためのnull
。image
- 書き込まれるイメージ、サムネール、およびメタデータを含むIIOImage
オブジェクト。param
-ImageWriteParam
、デフォルトのImageWriteParam
を使用する場合はnull
。- 例外:
IllegalStateException
- 出力が設定されていない場合。UnsupportedOperationException
-image
にRaster
およびcanWriteRasters
が含まれる場合、false
を返す。IllegalArgumentException
-image
がnull
の場合。IOException
- 書込み中にエラーが発生した場合。
-
write
public void write(IIOImage image) throws IOException
デフォルト・メタデータとサムネールの付いた1つのイメージを含む、完全なイメージ・ストリームを出力に追加します。 このメソッドはwrite(null, image, null)
の短縮形です。- パラメータ:
image
- 書き込まれるイメージ、サムネール、およびメタデータを含むIIOImage
オブジェクト。- 例外:
IllegalStateException
- 出力が設定されていない場合。IllegalArgumentException
-image
がnull
の場合。UnsupportedOperationException
-image
にRaster
およびcanWriteRasters
が含まれる場合、false
を返す。IOException
- 書込み中にエラーが発生した場合。
-
write
public void write(RenderedImage image) throws IOException
デフォルト・メタデータとサムネールの付いた1つのイメージから成る、完全なイメージ・ストリームを出力に追加します。 このメソッドはwrite(null, new IIOImage(image, null, null), null)
の短縮形です。- パラメータ:
image
- 書き込まれるRenderedImage
値。- 例外:
IllegalStateException
- 出力が設定されていない場合。IllegalArgumentException
-image
がnull
の場合。IOException
- 書込み中にエラーが発生した場合。
-
canWriteSequence
public boolean canWriteSequence()
すでにヘッダー情報を含み、以前のイメージである可能性を持つイメージ・ストリームに、書込み側がイメージを追加できる場合、true
を返します。canWriteSequence
がfalse
を返す場合、writeToSequence
とendWriteSequence
はUnsupportedOperationException
をスローします。デフォルトの実装では
false
を返します。- 戻り値:
- イメージを連続して追加できる場合
true
。
-
prepareWriteSequence
public void prepareWriteSequence(IIOMetadata streamMetadata) throws IOException
次に続く一連のwriteToSequence
呼出しを受け付けるために、提供されるストリーム・メタデータ・オブジェクトを使用して、ストリームを準備します。 メタデータがイメージ・データに先行する必要がある場合、このメタデータはストリームに書き込まれます。 引数がnull
の場合、デフォルト・ストリーム・メタデータが使用されます。出力が
ImageOutputStream
の場合、現在のシーク位置以前の既存の出力内容はフラッシュされ、読込み可能または書込み可能である必要はありません。 その形式で、1つのTIFFファイル内の一連のイメージのように、ヘッダー情報を補修するためにendWriteSequence
が巻き戻しできることが必要な場合、このメソッドで書き込まれるメタデータは、ストリームの書込み可能部分に存在する必要があります。 ほかの形式は、このメソッドと各イメージのあとで、ストリームをフラッシュできます。canWriteSequence
がfalse
を返す場合、このメソッドはUnsupportedOperationException
をスローします。出力は、
setOutput
メソッドを使用して前もって設定されている必要があります。出力が
null
の場合、デフォルト実装ではIllegalStateException
をスローし、それ以外の場合は、UnsupportedOperationException
をスローします。- パラメータ:
streamMetadata
- ストリーム・メタデータ・オブジェクト、またはnull
。- 例外:
IllegalStateException
- 出力が設定されていない場合。UnsupportedOperationException
-canWriteSequence
がfalse
を返す場合。IOException
- ストリーム・メタデータの書込みでエラーが発生した場合。
-
writeToSequence
public void writeToSequence(IIOImage image, ImageWriteParam param) throws IOException
1つのイメージと、関連付けられる可能性のあるメタデータとサムネールを、出力に追加します。 出力がImageOutputStream
の場合、endWriteSequence
が呼び出されるときにプラグインがヘッダー情報を補修できる必要がある場合(たとえば、TIFF)を除き、現在のシーク位置以前の既存の出力内容はフラッシュでき、読込み可能または書込み可能である必要はありません。canWriteSequence
がfalse
を返す場合、このメソッドはUnsupportedOperationException
をスローします。出力は、
setOutput
メソッドを使用して前もって設定されている必要があります。前もって
prepareWriteSequence
が呼び出されている必要があり、そうでない場合IllegalStateException
がスローされます。canWriteRasters
がtrue
を返す場合、IIOImage
はRaster
ソースを含むことができます。 それ以外の場合は、RenderedImage
ソースを含む必要があります。提供されるサムネールは、必要であればサイズ変更され、サポートされる数を超過したサムネールは、すべて無視されます。 提供されない追加のサムネールがその形式で必要な場合、書込み側が内部で生成します。
書込み処理を制御するために、
ImageWriteParam
をオプションで提供できます。param
がnull
の場合、デフォルトの書き込みparamが使用されます。指定された
ImageWriteParam
に、この書込み側がサポートしないオプション設定値(たとえば、プログレッシブ・エンコーディングや形式固有の設定)が含まれる場合、それらは無視されます。出力が
null
の場合、デフォルト実装ではIllegalStateException
をスローし、それ以外の場合は、UnsupportedOperationException
をスローします。- パラメータ:
image
- 書き込まれるイメージ、サムネール、およびメタデータを含むIIOImage
オブジェクト。param
-ImageWriteParam
、デフォルトのImageWriteParam
を使用する場合はnull
。- 例外:
IllegalStateException
- 出力が設定されていなかったか、prepareWriteSequence
が呼び出されていなかった場合。UnsupportedOperationException
-canWriteSequence
がfalse
を返す場合。IllegalArgumentException
-image
がnull
の場合。UnsupportedOperationException
-image
にRaster
およびcanWriteRasters
が含まれる場合、false
を返す。IOException
- 書込み中にエラーが発生した場合。
-
endWriteSequence
public void endWriteSequence() throws IOException
prepareWriteSequence
で始まる一連のイメージの書込みを完了します。 イメージの処理の最後に来るストリーム・メタデータはすべて書き出され、処理の最初のヘッダー情報は、必要であればすべて補修されます。 出力がImageOutputStream
の場合、処理の最後でストリーム・メタデータを通過したデータはフラッシュされ、読込み可能または書込み可能である必要はありません。canWriteSequence
がfalse
を返す場合、このメソッドはUnsupportedOperationException
をスローします。出力が
null
の場合、デフォルト実装ではIllegalStateException
をスローし、それ以外の場合は、UnsupportedOperationException
をスローします。- 例外:
IllegalStateException
- 出力が設定されていなかったか、prepareWriteSequence
が呼び出されていなかった場合。UnsupportedOperationException
-canWriteSequence
がfalse
を返す場合。IOException
- 書込み中にエラーが発生した場合。
-
canReplaceStreamMetadata
public boolean canReplaceStreamMetadata() throws IOException
すでに出力に存在するストリーム・メタデータを置き換えられる場合、true
を返します。出力が
null
の場合、デフォルト実装ではIllegalStateException
をスローし、それ以外の場合は、false
を返します。- 戻り値:
- ストリーム・メタデータの置換えが許可される場合
true
。 - 例外:
IllegalStateException
- 出力が設定されていない場合。IOException
- 照会中に入出力エラーが発生した場合。
-
replaceStreamMetadata
public void replaceStreamMetadata(IIOMetadata streamMetadata) throws IOException
出力内のストリーム・メタデータを新規情報に置き換えます。 出力がImageOutputStream
の場合、以前のストリーム内容が調べられ、可能なかぎり編集されて、新規データのための場所を作ります。 以前の出力内容はすべて、読み込みと書込みのために使用できる必要があります。canReplaceStreamMetadata
がfalse
を返す場合、UnsupportedOperationException
がスローされます。出力が
null
の場合、デフォルト実装ではIllegalStateException
をスローし、それ以外の場合は、UnsupportedOperationException
をスローします。- パラメータ:
streamMetadata
- ストリーム・メタデータを表すIIOMetadata
オブジェクト、またはデフォルト値を使用するためのnull
。- 例外:
IllegalStateException
- 出力が設定されていない場合。UnsupportedOperationException
-canReplaceStreamMetadata
がfalse
を返す場合。モードは含まない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
-canReplaceImageMetadata
がfalse
を返す場合。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
をオプションで提供できます。param
がnull
の場合、デフォルトの書き込みparamが使用されます。指定された
ImageWriteParam
に、この書込み側がサポートしないオプション設定値(たとえば、プログレッシブ・エンコーディングや形式固有の設定)が含まれる場合、それらは無視されます。出力が
null
の場合、デフォルト実装ではIllegalStateException
をスローし、それ以外の場合は、UnsupportedOperationException
をスローします。- パラメータ:
imageIndex
- イメージが書き込まれるインデックス。image
- 書き込まれるイメージ、サムネール、およびメタデータを含むIIOImage
オブジェクト。param
-ImageWriteParam
、デフォルトのImageWriteParam
を使用する場合はnull
。- 例外:
IllegalStateException
- 出力が設定されていない場合。UnsupportedOperationException
-canInsertImage(imageIndex)
がfalse
を返す場合。IllegalArgumentException
-image
がnull
の場合。IndexOutOfBoundsException
-imageIndex
が -1未満、または使用可能な最大インデックスより大きい場合。UnsupportedOperationException
-image
にRaster
およびcanWriteRasters
が含まれる場合、false
を返す。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
の呼出しが発生するまで、書込みは完全ではありません。prepareWriteEmpty
とendWriteEmpty
の呼出しの間に、prepareReplacePixels
、replacePixels
、およびendReplacePixels
の呼出しが発生することがあります。 ただし、prepareWriteEmpty
の呼出しは入れ子にできず、prepareWriteEmpty
とprepareInsertEmpty
の呼出しは挿入できません。canWriteEmpty
がfalse
を返す場合、UnsupportedOperationException
がスローされます。書込み処理を制御するために、
ImageWriteParam
をオプションで提供できます。param
がnull
の場合、デフォルトの書き込み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
-canWriteEmpty
がfalse
を返す場合。IllegalStateException
- 対応するendWriteEmpty
の呼び出しなしで、先行するprepareWriteEmpty
の呼出しが生成された場合。IllegalStateException
- 対応するendInsertEmpty
の呼び出しなしで、先行するprepareInsertEmpty
の呼出しが生成された場合。IllegalArgumentException
-imageType
がnull
の場合、またはthumbnails
にnull
参照または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
の呼出しが発生するまで、挿入は完全ではありません。prepareInsertEmpty
とendInsertEmpty
の呼出しの間に、prepareReplacePixels
、replacePixels
、およびendReplacePixels
の呼出しが発生することがあります。 ただし、prepareInsertEmpty
の呼出しは入れ子にできず、prepareWriteEmpty
とprepareInsertEmpty
の呼出しは挿入できません。canInsertEmpty(imageIndex)
がfalse
を返す場合、UnsupportedOperationException
がスローされます。書込み処理を制御するために、
ImageWriteParam
をオプションで提供できます。param
がnull
の場合、デフォルトの書き込み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
-imageType
がnull
の場合、またはthumbnails
にnull
参照または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
メソッドの一連の呼出しを処理するために、書込み側を準備します。 影響を受けるピクセル領域は、提供された領域に対してクリップされます。canReplacePixels
がfalse
を返す場合、UnsupportedOperationException
がスローされます。出力が
null
の場合、デフォルト実装ではIllegalStateException
をスローし、それ以外の場合は、UnsupportedOperationException
をスローします。- パラメータ:
imageIndex
- ピクセルが置き換えられるイメージのインデックス。region
- あとのピクセル範囲のクリッピングに使用されるRectangle
。- 例外:
IllegalStateException
- 出力が設定されていない場合。UnsupportedOperationException
-canReplacePixels(imageIndex)
がfalse
を返す場合。IndexOutOfBoundsException
-imageIndex
が0未満、または使用可能な最大インデックスより大きい場合。IllegalStateException
- 対応するendReplacePixels
の呼び出しなしに、先行するprepareReplacePixels
の呼出しがある(つまり、入れ子が許可されない)場合。IllegalArgumentException
-region
がnull
、または1未満の幅または高さを持つ場合。IOException
- 準備中に入出力エラーが発生した場合。
-
replacePixels
public void replacePixels(RenderedImage image, ImageWriteParam param) throws IOException
すでに出力内にあるイメージの一部を、指定されたイメージの一部に置き換えます。 イメージ・データは、既存イメージのイメージ配置と一致するか、または置き換えられる必要があります。出力先範囲は
param
引数で指定され、イメージ範囲にクリップされて、その範囲はprepareReplacePixels
に提供されます。 少なくともソースの1つのピクセルは、クリップしてはいけません。そうしないと、例外がスローされます。書込み処理を制御するために、
ImageWriteParam
をオプションで提供できます。param
がnull
の場合、デフォルトの書き込みparamが使用されます。指定された
ImageWriteParam
に、この書込み側がサポートしないオプション設定値(たとえば、プログレッシブ・エンコーディングや形式固有の設定)が含まれる場合、それらは無視されます。メソッドは、
prepareReplacePixels
の呼出し後にのみ呼び出すことができ、それ以外の場合IllegalStateException
がスローされます。出力が
null
の場合、デフォルト実装ではIllegalStateException
をスローし、それ以外の場合は、UnsupportedOperationException
をスローします。- パラメータ:
image
- ソース・ピクセルを含むRenderedImage
。param
-ImageWriteParam
、デフォルトのImageWriteParam
を使用する場合はnull
。- 例外:
IllegalStateException
- 出力が設定されていない場合。UnsupportedOperationException
-canReplacePixels(imageIndex)
がfalse
を返す場合。IllegalStateException
- 一致するendReplacePixels
の呼び出しなしで、先行するprepareReplacePixels
の呼出しがない場合。IllegalArgumentException
- 次のいずれかに当てはまる場合:-
image
がnull
です。 - 交差した範囲にピクセルが1つも含まれない。
-
image
の配置が既存のイメージ配置に一致しないか、この書込み側で配置を既存のイメージ配置に置き換えられない。
-
IOException
- 書込み中に入出力エラーが発生した場合。
-
replacePixels
public void replacePixels(Raster raster, ImageWriteParam param) throws IOException
すでに出力内にあるイメージの一部を、指定されたRaster
の一部に置き換えます。 イメージ・データは、既存イメージのイメージ配置と一致するか、または置き換えられる必要があります。書込み処理を制御するために、
ImageWriteParam
をオプションで提供できます。param
がnull
の場合、デフォルトの書き込み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
-canWriteRasters
がfalse
を返す場合。IllegalArgumentException
- 次のいずれかに当てはまる場合:-
raster
がnull
です。 - 交差した範囲にピクセルが1つも含まれない。
-
raster
の配置が既存のイメージ配置に一致しないか、この書込み側で配置を既存のイメージ配置に置き換えられない。
-
IOException
- 書込み中に入出力エラーが発生した場合。
-
endReplacePixels
public void endReplacePixels() throws IOException
replacePixels
の呼出し処理を終了します。canReplacePixels
がfalse
を返す場合、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()
以前の中断リクエストをクリアします。 このメソッドが呼び出されると、abortRequested
はfalse
を返します。- 関連項目:
abort()
,abortRequested()
-
addIIOWriteWarningListener
public void addIIOWriteWarningListener(IIOWriteWarningListener listener)
登録された警告リスナーのリストにIIOWriteWarningListener
を追加します。listener
がnull
の場合、例外はスローされず、何も処理は行われません。 指定されたリスナーに送られたメッセージは、可能であれば、現在のLocale
に合うようにローカライズされます。Locale
が設定されていない場合は、書込み側に適合するよう警告メッセージをローカライズできます。- パラメータ:
listener
- 登録されるIIOWriteWarningListener
。- 関連項目:
removeIIOWriteWarningListener(javax.imageio.event.IIOWriteWarningListener)
-
removeIIOWriteWarningListener
public void removeIIOWriteWarningListener(IIOWriteWarningListener listener)
登録された警告リスナーのリストから、IIOWriteWarningListener
を削除します。 以前にリスナーが登録されていない場合、またはlistener
がnull
の場合、例外はスローされず、何も処理は行われません。- パラメータ:
listener
- 登録解除されるIIOWriteWarningListener
。- 関連項目:
addIIOWriteWarningListener(javax.imageio.event.IIOWriteWarningListener)
-
removeAllIIOWriteWarningListeners
public void removeAllIIOWriteWarningListeners()
現在登録されているすべてのIIOWriteWarningListener
オブジェクトを削除します。デフォルト実装では
warningListeners
とwarningLocales
インスタンスの変数をnull
に設定します。
-
addIIOWriteProgressListener
public void addIIOWriteProgressListener(IIOWriteProgressListener listener)
登録された進捗リスナーのリストにIIOWriteProgressListener
を追加します。listener
がnull
の場合、例外はスローされず、何も処理は行われません。- パラメータ:
listener
- 登録されるIIOWriteProgressListener
。- 関連項目:
removeIIOWriteProgressListener(javax.imageio.event.IIOWriteProgressListener)
-
removeIIOWriteProgressListener
public void removeIIOWriteProgressListener(IIOWriteProgressListener listener)
登録された進捗リスナーのリストから、IIOWriteProgressListener
を削除します。 以前にリスナーが登録されていない場合、またはlistener
がnull
の場合、例外はスローされず、何も処理は行われません。- パラメータ:
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)
warningOccurred
メソッドを呼び出すことで、警告メッセージを、登録されたすべてのIIOWriteWarningListener
に通知します。 サブクラスは、必要に応じてこのメソッドを使用できます。- パラメータ:
imageIndex
- 警告が発生するイメージのインデックス。warning
- 警告メッセージ。- 例外:
IllegalArgumentException
-warning
がnull
の場合。
-
processWarningOccurred
protected void processWarningOccurred(int imageIndex, String baseName, String keyword)
ResourceBundle
から取得した文字列を持つwarningOccurred
メソッドを呼び出すことで、ローカライズされた警告メッセージを、登録されたすべてのIIOWriteWarningListener
に通知します。 サブクラスは、必要に応じてこのメソッドを使用できます。- パラメータ:
imageIndex
- 警告が発生するイメージのインデックス。baseName
- ローカライズされた警告メッセージを含むResourceBundle
のセットのベース名。keyword
-ResourceBundle
内の警告メッセージにインデックスを付けるために使用されるキーワード。- 例外:
IllegalArgumentException
-baseName
がnull
の場合。IllegalArgumentException
-keyword
がnull
の場合。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
が不要になった時点でこのメソッドを呼び出すことが重要です。 そうしないと、書込み側はリソース上に無期限に存在し続ける可能性があります。このメソッドのデフォルト実装は、スーパー・クラスでは何も実行しません。 サブクラス実装で、すべてのリソース、特にネイティブ・リソースが解放されたことを確認してください。
-
-