クラスImageIO
ImageReaderおよびImageWriterを検索する静的な簡易メソッドを保持して、簡単な符号化と復号化を実行するクラスです。-
メソッドのサマリー
修飾子と型メソッド説明static ImageInputStreamcreateImageInputStream(Object input) 指定されたObjectから入力を取得するImageInputStreamを返します。static ImageOutputStreamcreateImageOutputStream(Object output) 指定されたObjectに出力を送信するImageOutputStreamを返します。static FilesetCacheDirectoryによって設定された現在の値、または明示的に設定が行われていない場合はnullを返します。static ImageReadergetImageReader(ImageWriter writer) 指定されたImageWriterに対応するImageReaderを返します(存在する場合)。または、このImageWriterのプラグインが対応するImageReaderを指定しない場合、または指定されたImageWriterが登録されていない場合、nullを返します。static Iterator<ImageReader> getImageReaders(Object input) 指定されたObject、通常はImageInputStreamを復号化できるような、現在登録されているすべてのImageReaderを保持するIteratorを返します。static Iterator<ImageReader> getImageReadersByFormatName(String formatName) 名前付きの形式を復号化できるような、現在登録されているすべてのImageReaderを保持するIteratorを返します。static Iterator<ImageReader> getImageReadersByMIMEType(String MIMEType) 指定されたMIMEタイプを持つファイルを復号化できるような、現在登録されているすべてのImageReaderを保持するIteratorを返します。static Iterator<ImageReader> getImageReadersBySuffix(String fileSuffix) 指定された接尾辞を持つファイルを復号化できるような、現在登録されているすべてのImageReaderを保持するIteratorを返します。static Iterator<ImageTranscoder> getImageTranscoders(ImageReader reader, ImageWriter writer) 指定されたImageReaderおよびImageWriterのメタデータ間を変換できるような、現在登録されているすべてのImageTranscoderを保持するIteratorを返します。static ImageWritergetImageWriter(ImageReader reader) 指定されたImageReaderに対応するImageWriterを返します(存在する場合)。または、このImageReaderのプラグインが対応するImageWriterを指定しない場合、または指定されたImageReaderが登録されていない場合、nullを返します。static Iterator<ImageWriter> getImageWriters(ImageTypeSpecifier type, String formatName) 指定された形式で、指定されたレイアウト(ImageTypeSpecifierを使用して指定された)のイメージを符号化できるような、現在登録されているすべてのImageWriterを保持するIteratorを返します。static Iterator<ImageWriter> getImageWritersByFormatName(String formatName) 名前付きの形式を符号化できるような、現在登録されているすべてのImageWriterを保持するIteratorを返します。static Iterator<ImageWriter> getImageWritersByMIMEType(String MIMEType) 指定されたMIMEタイプを持つファイルを符号化できるような、現在登録されているすべてのImageWriterを保持するIteratorを返します。static Iterator<ImageWriter> getImageWritersBySuffix(String fileSuffix) 指定された接尾辞を持つファイルを符号化できるような、現在登録されているすべてのImageWriterを保持するIteratorを返します。static String[]現在登録されている一連のリーダーによって認識される形式に関連付けられたすべてのファイル接尾辞をリストするStringの配列を返します。static String[]現在登録されている一連のリーダーによって認識される、すべての非公式な形式の名前をリストするStringの配列を返します。static String[]現在登録されている一連のリーダーによって認識される、すべてのMIMEタイプをリストするStringの配列を返します。static booleansetUseCacheによって設定された現在の値、または明示的に設定が行われていない場合はtrueを返します。static String[]現在登録されている一連のライターによって認識される形式に関連付けられたすべてのファイル接尾辞をリストするStringの配列を返します。static String[]現在登録されている一連のライターによって認識される、すべての非公式な形式の名前をリストするStringの配列を返します。static String[]現在登録されている一連のライターによって認識される、すべてのMIMEタイプをリストするStringの配列を返します。static BufferedImage現在登録されているものの中から自動的に選択されたImageReaderを使用して、指定されたFileを復号化した結果として、BufferedImageを返します。static BufferedImageread(InputStream input) 現在登録されているものの中から自動的に選択されたImageReaderを使用して、指定されたInputStreamを復号化した結果として、BufferedImageを返します。static BufferedImage現在登録されているものの中から自動的に選択されたImageReaderを使用して、指定されたURLを復号化した結果として、BufferedImageを返します。static BufferedImageread(ImageInputStream stream) 現在登録されているものの中から自動的に選択されたImageReaderを使用して、指定されたImageInputStreamを復号化した結果として、BufferedImageを返します。static voidアプリケーションのクラス・パスにあるプラグインを走査して、サービス・プロバイダ・クラスをロードし、IIORegistryで検出されたインスタンスごとにサービス・プロバイダ・インスタンスを登録します。static voidsetCacheDirectory(File cacheDirectory) キャッシュ・ファイルが作成されるディレクトリを設定します。static voidsetUseCache(boolean useCache) ImageInputStreamおよびImageOutputStreamの作成時に、ディスク・ベースのキャッシュ・ファイルを使用する必要があるかどうかを示すフラグを設定します。static booleanwrite(RenderedImage im, String formatName, File output) 指定された形式をサポートする任意のImageWriterを使用してイメージをFileに書き込みます。static booleanwrite(RenderedImage im, String formatName, OutputStream output) 指定された形式をサポートする任意のImageWriterを使用してイメージをOutputStreamに書き込みます。static booleanwrite(RenderedImage im, String formatName, ImageOutputStream output) 指定された形式をサポートする任意のImageWriterを使用してイメージをImageOutputStreamに書き込みます。
-
メソッドの詳細
-
scanForPlugins
public static void scanForPlugins()アプリケーションのクラス・パスにあるプラグインを走査して、サービス・プロバイダ・クラスをロードし、IIORegistryで検出されたインスタンスごとにサービス・プロバイダ・インスタンスを登録します。このメソッドが必要なのは、アプリケーションのクラス・パスを理論上変更することができ、追加のプラグインが使用可能になるためです。 クラス・パスは、APIの呼び出しごとに再走査するのではなく、最初の呼び出しだけで自動的に走査されます。 クライアントは、このメソッドを呼び出して再走査を要求できます。 したがって、このメソッドは、実行時に新しいプラグインを動的に使用可能にする高度なアプリケーションによってのみ呼び出す必要があります。
ClassLoaderコンテキストのgetResourcesメソッドは、META-INF/services/javax.imageio.spi.classnameという名前のファイルを保持するJARファイルの検索に使用します。ここで、classnameは、アプリケーションのクラス・パスに沿ったImageReaderSpi、ImageWriterSpi、ImageTranscoderSpi、ImageInputStreamSpi、またはImageOutputStreamSpiのいずれか1つです。検索されたファイルの内容は、上記のサービス・プロバイダ・インタフェースを実装する実際の実装クラスの名前を示します。デフォルトのクラス・ローダーが、これらの各クラスをロードして、各クラスのインスタンスをインスタンス化するために使用され、あとで取得できるようにレジストリに配置されます。
検索される正確な位置のセットはJava実行時環境の実装に依存します。
- 関連項目:
-
setUseCache
public static void setUseCache(boolean useCache) ImageInputStreamおよびImageOutputStreamの作成時に、ディスク・ベースのキャッシュ・ファイルを使用する必要があるかどうかを示すフラグを設定します。標準
InputStreamから読み取る場合、背後にあるストリームはデータを再読込みできないため、事前にキャッシュに読込み情報を保存する必要があります。 同様に、標準OutputStreamに書込みを行う場合、最終送信先にフラッシュする前に、事前に書き込まれた値を変更するためにキャッシュを使用します。キャッシュは、主記憶またはディスクに常駐します。 このフラグを
falseに設定すると、これ以後のストリームがディスクを使用しないようにできます。これにより、ファイルの作成と廃棄のオーバーヘッドが除かれるため、小さいイメージを使用して作業する場合に役立ちます。起動時は、値は
trueに設定されます。- パラメータ:
useCache- オプションとなっている場合に、キャッシュ・ファイルが使用できるかどうかを示すboolean。- 関連項目:
-
getUseCache
public static boolean getUseCache()setUseCacheによって設定された現在の値、または明示的に設定が行われていない場合はtrueを返します。- 戻り値:
ImageInputStreamおよびImageOutputStreamに対して、ディスク・ベースのキャッシュが使用できる場合はtrue。- 関連項目:
-
setCacheDirectory
public static void setCacheDirectory(File cacheDirectory) キャッシュ・ファイルが作成されるディレクトリを設定します。 値nullは、システムに依存するデフォルトの一時ファイル・ディレクトリが使用されることを示します。getUseCacheがfalseを返す場合、この値は無視されます。- パラメータ:
cacheDirectory- ディレクトリを指定するFile。- スロー:
IllegalArgumentException-cacheDirがnull以外であるが、ディレクトリではない場合。- 関連項目:
-
getCacheDirectory
public static File getCacheDirectory()setCacheDirectoryによって設定された現在の値、または明示的に設定が行われていない場合はnullを返します。- 戻り値:
- キャッシュ・ファイルが作成されるディレクトリを示す
File、またはシステムに依存するデフォルトの一時ファイル・ディレクトリを示すnull。 - 関連項目:
-
createImageInputStream
public static ImageInputStream createImageInputStream(Object input) throws IOException 指定されたObjectから入力を取得するImageInputStreamを返します。IIORegistryクラスで登録されたImageInputStreamSpiのセットが照会され、指定されたオブジェクトから入力を取得できる最初のストリームを使用して、返されるImageInputStreamが作成されます。 適切なImageInputStreamSpiが存在しない場合、nullが返されます。getUseCacheおよびgetCacheDirectoryからの現在のキャッシュの設定は、キャッシュの制御に使用します。- パラメータ:
input-File、読込み可能なRandomAccessFile、InputStreamなどを入力ソースとして使用するObject。- 戻り値:
ImageInputStream、またはnull。- スロー:
IllegalArgumentException-inputがnullの場合。IOException- キャッシュ・ファイルが必要であるが作成できない場合。- 関連項目:
-
createImageOutputStream
public static ImageOutputStream createImageOutputStream(Object output) throws IOException 指定されたObjectに出力を送信するImageOutputStreamを返します。IIORegistryクラスで登録されたImageOutputStreamSpiのセットが照会され、指定されたオブジェクトから出力を送信できる最初のストリームを使用して、返されるImageOutputStreamが作成されます。 適切なImageOutputStreamSpiが存在しない場合、nullが返されます。getUseCacheおよびgetCacheDirectoryからの現在のキャッシュの設定は、キャッシュの制御に使用します。- パラメータ:
output-File、書込み可能なRandomAccessFile、OutputStreamなどを出力先として使用するObject。- 戻り値:
ImageOutputStream、またはnull。- スロー:
IllegalArgumentException-outputがnullの場合。IOException- キャッシュ・ファイルが必要であるが作成できない場合。- 関連項目:
-
getReaderFormatNames
public static String[] getReaderFormatNames()現在登録されている一連のリーダーによって認識される、すべての非公式な形式の名前をリストするStringの配列を返します。- 戻り値:
Stringの配列。
-
getReaderMIMETypes
public static String[] getReaderMIMETypes()現在登録されている一連のリーダーによって認識される、すべてのMIMEタイプをリストするStringの配列を返します。- 戻り値:
Stringの配列。
-
getReaderFileSuffixes
public static String[] getReaderFileSuffixes()現在登録されている一連のリーダーによって認識される形式に関連付けられたすべてのファイル接尾辞をリストするStringの配列を返します。- 戻り値:
Stringの配列。- 導入されたバージョン:
- 1.6
-
getImageReaders
public static Iterator<ImageReader> getImageReaders(Object input) 指定されたObject、通常はImageInputStreamを復号化できるような、現在登録されているすべてのImageReaderを保持するIteratorを返します。ストリームの位置は、メソッドの終了時にその前の位置に残ります。
- パラメータ:
input-ImageInputStreamまたは符号化されたイメージ・データを保持するほかのObject。- 戻り値:
ImageReaderを保持するIterator。- スロー:
IllegalArgumentException-inputがnullの場合。- 関連項目:
-
getImageReadersByFormatName
public static Iterator<ImageReader> getImageReadersByFormatName(String formatName) 名前付きの形式を復号化できるような、現在登録されているすべてのImageReaderを保持するIteratorを返します。- パラメータ:
formatName- 非公式な形式の名前(たとえば、「jpeg」や「tiff」)を保持するString。- 戻り値:
ImageReaderを保持するIterator。- スロー:
IllegalArgumentException-formatNameがnullの場合。- 関連項目:
-
getImageReadersBySuffix
public static Iterator<ImageReader> getImageReadersBySuffix(String fileSuffix) 指定された接尾辞を持つファイルを復号化できるような、現在登録されているすべてのImageReaderを保持するIteratorを返します。- パラメータ:
fileSuffix- ファイル接尾辞(たとえば、「jpg」や「tiff」)を保持するString。- 戻り値:
ImageReaderを保持するIterator。- スロー:
IllegalArgumentException-fileSuffixがnullの場合。- 関連項目:
-
getImageReadersByMIMEType
public static Iterator<ImageReader> getImageReadersByMIMEType(String MIMEType) 指定されたMIMEタイプを持つファイルを復号化できるような、現在登録されているすべてのImageReaderを保持するIteratorを返します。- パラメータ:
MIMEType- ファイル接尾辞(たとえば、「image/jpeg」や「image/x-bmp」)を保持するString。- 戻り値:
ImageReaderを保持するIterator。- スロー:
IllegalArgumentException-MIMETypeがnullの場合。- 関連項目:
-
getWriterFormatNames
public static String[] getWriterFormatNames()現在登録されている一連のライターによって認識される、すべての非公式な形式の名前をリストするStringの配列を返します。- 戻り値:
Stringの配列。
-
getWriterMIMETypes
public static String[] getWriterMIMETypes()現在登録されている一連のライターによって認識される、すべてのMIMEタイプをリストするStringの配列を返します。- 戻り値:
Stringの配列。
-
getWriterFileSuffixes
public static String[] getWriterFileSuffixes()現在登録されている一連のライターによって認識される形式に関連付けられたすべてのファイル接尾辞をリストするStringの配列を返します。- 戻り値:
Stringの配列。- 導入されたバージョン:
- 1.6
-
getImageWritersByFormatName
public static Iterator<ImageWriter> getImageWritersByFormatName(String formatName) 名前付きの形式を符号化できるような、現在登録されているすべてのImageWriterを保持するIteratorを返します。- パラメータ:
formatName- 非公式な形式の名前(たとえば、「jpeg」や「tiff」)を保持するString。- 戻り値:
ImageWriterを保持するIterator。- スロー:
IllegalArgumentException-formatNameがnullの場合。- 関連項目:
-
getImageWritersBySuffix
public static Iterator<ImageWriter> getImageWritersBySuffix(String fileSuffix) 指定された接尾辞を持つファイルを符号化できるような、現在登録されているすべてのImageWriterを保持するIteratorを返します。- パラメータ:
fileSuffix- ファイル接尾辞(たとえば、「jpg」や「tiff」)を保持するString。- 戻り値:
ImageWriterを保持するIterator。- スロー:
IllegalArgumentException-fileSuffixがnullの場合。- 関連項目:
-
getImageWritersByMIMEType
public static Iterator<ImageWriter> getImageWritersByMIMEType(String MIMEType) 指定されたMIMEタイプを持つファイルを符号化できるような、現在登録されているすべてのImageWriterを保持するIteratorを返します。- パラメータ:
MIMEType- ファイル接尾辞(たとえば、「image/jpeg」や「image/x-bmp」)を保持するString。- 戻り値:
ImageWriterを保持するIterator。- スロー:
IllegalArgumentException-MIMETypeがnullの場合。- 関連項目:
-
getImageWriter
public static ImageWriter getImageWriter(ImageReader reader) 指定されたImageReaderに対応するImageWriterを返します(存在する場合)。または、このImageReaderのプラグインが対応するImageWriterを指定しない場合、または指定されたImageReaderが登録されていない場合、nullを返します。 このメカニズムは、ImageReaderで生成された(IIOMetadataオブジェクトによって符号化されたような)ピクセル以外のメタデータの内部構造を認識するImageWriterを取得するために使用されます。 このデータをImageReaderから取得し、このメソッドで取得されたImageWriterに渡すことにより、クライアント・プログラムは、メタデータの構造やイメージ形式を認識しなくても、すべてのメタデータを保持したまま、イメージを読み込み、それを何らかの方法で変更し、書き出すことができます。 このメソッドは、javax.imageio.spi.ImageReaderSpi.getImageWriterSpiNames()によって返されたリストの最初にある「優先設定」ライターを返すことに注意してください。- パラメータ:
reader- 登録されたImageReaderのインスタンス。- 戻り値:
ImageWriter、またはnull。- スロー:
IllegalArgumentException-readerがnullの場合。- 関連項目:
-
getImageReader
public static ImageReader getImageReader(ImageWriter writer) 指定されたImageWriterに対応するImageReaderを返します(存在する場合)。または、このImageWriterのプラグインが対応するImageReaderを指定しない場合、または指定されたImageWriterが登録されていない場合、nullを返します。 このメソッドは、主としてgetImageWriter(ImageReader)と対称となるように提供されます。 このメソッドは、javax.imageio.spi.ImageWriterSpi.getImageReaderSpiNames()によって返されたリストの最初にある「優先設定」リーダーを返すことに注意してください。- パラメータ:
writer- 登録されたImageWriterのインスタンス。- 戻り値:
ImageReader、またはnull。- スロー:
IllegalArgumentException-writerがnullの場合。- 関連項目:
-
getImageWriters
public static Iterator<ImageWriter> getImageWriters(ImageTypeSpecifier type, String formatName) 指定された形式で、指定されたレイアウト(ImageTypeSpecifierを使用して指定された)のイメージを符号化できるような、現在登録されているすべてのImageWriterを保持するIteratorを返します。- パラメータ:
type- 書き込まれたイメージのレイアウトを示すImageTypeSpecifier。formatName-formatの非公式な名前。- 戻り値:
ImageWriterを保持するIterator。- スロー:
IllegalArgumentException- 任意のパラメータがnullの場合。- 関連項目:
-
getImageTranscoders
public static Iterator<ImageTranscoder> getImageTranscoders(ImageReader reader, ImageWriter writer) 指定されたImageReaderおよびImageWriterのメタデータ間を変換できるような、現在登録されているすべてのImageTranscoderを保持するIteratorを返します。- パラメータ:
reader-ImageReader。writer-ImageWriter。- 戻り値:
ImageTranscoderを保持するIterator。- スロー:
IllegalArgumentException-readerまたはwriterがnullの場合。
-
read
public static BufferedImage read(File input) throws IOException 現在登録されているものの中から自動的に選択されたImageReaderを使用して、指定されたFileを復号化した結果として、BufferedImageを返します。FileはImageInputStreamにラップされます。 結果のストリームを読み込めるようなImageReaderが登録されていない場合は、nullが返されます。getUseCacheおよびgetCacheDirectoryからの現在のキャッシュの設定は、作成されたImageInputStreamのキャッシュの制御に使用します。ファイル名として
Stringをとるreadメソッドは存在しないことに注意してください。代わりに、ファイル名からFileを作成したあとにこのメソッドを使用します。このメソッドは、
Fileから直接読み取れるImageReaderを検索しません。この場合は、IIORegistryとImageReaderSpiを使用します。- パラメータ:
input- 読込み元のFile。- 戻り値:
- 復号化された入力内容を保持する
BufferedImage、またはnull。 - スロー:
IllegalArgumentException-inputがnullの場合。IOException- 読取り中にエラーが発生した場合、または必要なImageInputStreamを作成できない場合。
-
read
public static BufferedImage read(InputStream input) throws IOException 現在登録されているものの中から自動的に選択されたImageReaderを使用して、指定されたInputStreamを復号化した結果として、BufferedImageを返します。InputStreamはImageInputStreamにラップされます。 結果のストリームを読み込めるようなImageReaderが登録されていない場合は、nullが返されます。getUseCacheおよびgetCacheDirectoryからの現在のキャッシュの設定は、作成されたImageInputStreamのキャッシュの制御に使用します。このメソッドは、
InputStreamから直接読み取れるImageReaderを検索しません。この場合は、IIORegistryとImageReaderSpiを使用します。このメソッドは、読込みオペレーションの完了後、提供された
InputStreamを閉じません。ストリームを必要に応じて閉じるのは、呼出し側の役割です。- パラメータ:
input- 読込み元のInputStream。- 戻り値:
- 復号化された入力内容を保持する
BufferedImage、またはnull。 - スロー:
IllegalArgumentException-inputがnullの場合。IOException- 読取り中にエラーが発生した場合、または必要なImageInputStreamを作成できない場合。
-
read
public static BufferedImage read(URL input) throws IOException 現在登録されているものの中から自動的に選択されたImageReaderを使用して、指定されたURLを復号化した結果として、BufferedImageを返します。InputStreamはImageInputStreamにラップされたURLから取得します。 結果のストリームを読み込めるようなImageReaderが登録されていない場合は、nullが返されます。getUseCacheおよびgetCacheDirectoryからの現在のキャッシュの設定は、作成されたImageInputStreamのキャッシュの制御に使用します。このメソッドは、
URLから直接読み取れるImageReaderを検索しません。この場合は、IIORegistryとImageReaderSpiを使用します。- パラメータ:
input- 読込み元のURL。- 戻り値:
- 復号化された入力内容を保持する
BufferedImage、またはnull。 - スロー:
IllegalArgumentException-inputがnullの場合。IOException- 読取り中にエラーが発生した場合、または必要なImageInputStreamを作成できない場合。
-
read
public static BufferedImage read(ImageInputStream stream) throws IOException 現在登録されているものの中から自動的に選択されたImageReaderを使用して、指定されたImageInputStreamを復号化した結果として、BufferedImageを返します。 ストリームを読み込めるようなImageReaderが登録されていない場合は、nullが返されます。このクラスのほかの大半のメソッドとは異なり、このメソッドは、
nullが返されないかぎり、読込みオペレーションの完了後に提供されたImageInputStreamを閉じます。nullが返された場合、このメソッドはストリームを閉じません。- パラメータ:
stream- 読込み元のImageInputStream。- 戻り値:
- 復号化された入力内容を保持する
BufferedImage、またはnull。 - スロー:
IllegalArgumentException-streamがnullの場合。IOException- 読込み中にエラーが発生した場合。
-
write
public static boolean write(RenderedImage im, String formatName, ImageOutputStream output) throws IOException 指定された形式をサポートする任意のImageWriterを使用してイメージをImageOutputStreamに書き込みます。 イメージは、現在のストリーム・ポインタで始まるImageOutputStreamに書き込まれ、そのポイントから前にある既存のストリーム・データ(存在する場合)を上書きします。このメソッドは、書込みオペレーションの完了後、提供された
ImageOutputStreamを閉じません。ストリームを必要に応じて閉じるのは、呼出し側の役割です。- パラメータ:
im- 書き込まれるRenderedImage値。formatName- 非公式な形式の名前を保持するString。output- 書き込まれるImageOutputStream。- 戻り値:
- 適切なライターが見つからない場合は
false。 - スロー:
IllegalArgumentException- 任意のパラメータがnullの場合。IOException- 書込み中にエラーが発生した場合。
-
write
public static boolean write(RenderedImage im, String formatName, File output) throws IOException 指定された形式をサポートする任意のImageWriterを使用してイメージをFileに書き込みます。 すでにFileが存在する場合、その内容は破棄されます。- パラメータ:
im- 書き込まれるRenderedImage値。formatName- 非公式な形式の名前を保持するString。output- 書き込まれるFile。- 戻り値:
- 適切なライターが見つからない場合は
false。 - スロー:
IllegalArgumentException- 任意のパラメータがnullの場合。IOException- 書込み中にエラーが発生した場合、または必要なImageOutputStreamを作成できない場合。
-
write
public static boolean write(RenderedImage im, String formatName, OutputStream output) throws IOException 指定された形式をサポートする任意のImageWriterを使用してイメージをOutputStreamに書き込みます。このメソッドは、書込みオペレーションの完了後、提供された
OutputStreamを閉じません。ストリームを必要に応じて閉じるのは、呼出し側の役割です。getUseCacheおよびgetCacheDirectoryからの現在のキャッシュの設定は、キャッシュの制御に使用します。- パラメータ:
im- 書き込まれるRenderedImage値。formatName- 非公式な形式の名前を保持するString。output- 書き込まれるOutputStream。- 戻り値:
- 適切なライターが見つからない場合は
false。 - スロー:
IllegalArgumentException- 任意のパラメータがnullの場合。IOException- 書込み中にエラーが発生した場合、または必要なImageOutputStreamを作成できない場合。
-