モジュール java.desktop

パッケージ javax.imageio

Java Image I/O APIの基本パッケージです。

ImageIOクラスのstaticメソッドを使用して、多くの共通イメージI/O操作を実行できます。

このパッケージに含まれる基本クラスとインタフェースは、メタデータとサムネール(IIOImage)を含むイメージ・ファイルの内容を記述するためのもの、イメージ読込み処理(ImageReaderImageReadParamImageTypeSpecifier)とイメージ書込み処理(ImageWriterImageWriteParam)を制御するためのもの、形式間の変換(ImageTranscoder)を実行するためのもの、エラー報告(IIOException)を行うためのものがあります。

javax.imageioのすべての実装に、次の標準イメージ形式のプラグインが用意されています。

標準のイメージ・フォーマット・プラグ・イン
イメージ・フォーマット 読込み 書込み ノート メタデータ
BMP はい はい なし BMPメタデータ形式
GIF はい はい GIFプラグイン・ノート GIFメタデータ形式
JPEG はい はい なし JPEGメタデータ形式
PNG はい はい なし PNGメタデータ形式
TIFF はい はい TIFFプラグイン・ノート TIFFメタデータ形式
WBMP はい はい なし WBMPメタデータ形式

標準プラグインに関するノート

GIFイメージ形式の標準プラグイン

ImageIOは、「グラフィックス交換フォーマット(GIF)」イメージ・フォーマット用のImageReaderおよびImageWriterプラグインを提供します。 これらはJREに含まれる「標準」のGIFプラグインであり、標準拡張機能に含まれるプラグインやサード・パーティのプラグインとは異なります。 次のノートおよびメタデータ仕様が、標準プラグインに適用されます。

GIFイメージの書込み

GIFイメージ・ライター・プラグインでは、次の要件を満たすイメージの損失のない書込みが保証されます。
  • バンド数が1である
  • サンプルごとのビット数が8以下である
  • 色成分のサイズが8以下である

デフォルトでは、GIFライター・プラグインによりバージョン「89a」のイメージが作成されます。 これは、ストリーム・メタデータのバージョンを明示的に設定することにより「87a」に変更できます。GIFストリーム・メタデータ形式の仕様を参照してください。

GIFライター・プラグインを使用すると、ImageWriterクラスで定義された標準シーケンス書込みメソッドを使用して動画GIFイメージを作成できます。

次の条件のいずれかが満たされると、グローバル・カラー表が出力ストリームに書き込まれます。

  • GlobalColorTable要素を含むストリーム・メタデータが提供される
  • シーケンスが書込み中であり、シーケンス内の最初のイメージに対してLocalColorTable要素を含むイメージ・メタデータが提供される
  • イメージ・メタデータが提供されないか、イメージ・メタデータにLocalColorTable要素が含まれない

最初の条件が当てはまる場合はストリーム・メタデータ内のグローバル・カラー表が使用され、2番目の条件が当てはまる場合はイメージ・メタデータ内のローカル・カラー表が使用されます。3番目の条件が当てはまる場合は、(最初の)イメージのColorModelまたはSampleModelからグローバル・カラー表が作成されます。

ローカル・カラー表が出力ストリームに書き込まれるのは、LocalColorTable要素を含むイメージ・メタデータがライターに提供される場合、またはイメージ・メタデータがライターに提供されず、イメージ自体から生成されるローカル・カラー表がグローバル・カラー表と等しくない場合だけです。

Graphic Control Extensionブロックが出力ストリームに書き込まれるのは、GraphicControlExtension要素を含むイメージ・メタデータがライターに提供される場合、またはイメージ・メタデータが提供されず、イメージから生成されるローカル・カラー表に透明インデックスが必要な場合だけです。 Application、Plain Text、およびComment Extensionブロックが書き込まれるのは、これらのブロックがイメージ・メタデータを介してライターに提供される場合だけです。

インタレース・イメージの書込みは、指定したImageWriteParamインスタンスのプログレッシブ・モードを使って制御できます。 プログレッシブ・モードがMODE_DISABLEDの場合は、インタレースでないイメージが書き込まれます。 プログレッシブ・モードがMODE_DEFAULTの場合は、インタレース・イメージが書き込まれます。 プログレッシブ・モードがMODE_COPY_FROM_METADATAの場合、メタデータ設定が使用されます(メタデータ設定が指定済みの場合)。メタデータ設定が指定されない場合は、インタレース・イメージが書き込まれます。

GIFイメージ・ライター・プラグ・インは、ネイティブGIFストリーム・メタデータ・フォーマットjavax_imageio_gif_stream_1.0または標準メタデータ・フォーマットjavax_imageio_1.0でライターに供給されるメタデータから出力ストリーム・メタデータを設定し、ネイティブGIFイメージ・メタデータ・フォーマットjavax_imageio_gif_image_1.0または標準メタデータ・フォーマットjavax_imageio_1.0 標準メタデータ・フォーマットとGIFネイティブ・ストリームおよびイメージ・メタデータ・フォーマットとのマッピングは、表hereに示されています。

導入されたバージョン:
1.4
  • インタフェースのサマリー
    インタフェース 説明
    IIOParamController
    GUIを使用してユーザーから値を取得するか、またはほかの手段によって、IIOParamオブジェクトの設定値を判定できるオブジェクトにより実装されるインタフェースです。
    ImageTranscoder
    メタデータ変換機能を提供するインタフェースです。
  • クラスのサマリー
    クラス 説明
    IIOImage
    イメージ、サムネール(プレビュー)イメージ・セット、およびイメージに関連するメタデータを表すオブジェクトを集合させる単純なコンテナ・クラスです。
    IIOParam
    ストリームをデコードまたはエンコードする方法を記述する、すべてのクラスのスーパー・クラスです。
    ImageIO
    ImageReaderおよびImageWriterを検索する静的な簡易メソッドを保持して、簡単な符号化と復号化を実行するクラスです。
    ImageReader
    イメージを解析して復号化する抽象スーパー・クラスです。
    ImageReadParam
    ストリームが復号化される方法を記述するクラスです。
    ImageTypeSpecifier
    イメージの形式、特にSampleModelColorModelを、便利な方法で指定できるようにするクラスです。
    ImageWriteParam
    ストリームの符号化の方法を記述するクラスです。
    ImageWriter
    エンコードとイメージの書込みのための抽象スーパー・クラスです。
  • 例外のサマリー
    Exception 説明
    IIOException
    読み込み/書込み操作の実行時障害を通知する例外クラスです。