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