クラスBMPImageWriteParam

java.lang.Object
javax.imageio.IIOParam
javax.imageio.ImageWriteParam
javax.imageio.plugins.bmp.BMPImageWriteParam

public class BMPImageWriteParam extends ImageWriteParam
BMP形式でイメージをエンコードするためのImageWriteParamのサブクラスです。

このクラスを使用すると、BMP形式のイメージ・ファイルを書き込む際に、さまざまなパラメータを指定できます。 デフォルトのデータ・レイアウトは下から上方向です。このため、ピクセルは下から上に向かって格納され、最初の走査線が最後に格納されます。

setCompressionType()メソッドおよび適切な型文字列を使って、使用する圧縮スキームを指定できます。 指定した圧縮スキームが尊重されるのは、それが書き込まれるイメージの型と互換性がある場合だけです。 指定した圧縮スキームが書き込まれるイメージの型と互換性がない場合、BMPイメージ・ライターによりIOExceptionがスローされます。 圧縮方式が明示的に設定されない場合、getCompressionType()によりnullが返されます。 この場合、BMPイメージ・ライターにより、カラー解像度を失わずに指定したイメージをエンコードできる圧縮方式が選択されます。

圧縮方式を表す文字列およびそのサポートするイメージ型を、次の表に示します。

圧縮方式
圧縮方式文字列 説明 イメージ型
BI_RGB 圧縮解除されたRLE <= 8ビット/サンプル
BI_RLE8 8ビット・ラン・レングス・エンコーディング <= 8ビット/サンプル
BI_RLE4 4ビット・ラン・レングス・エンコーディング <= 4ビット/サンプル
BI_BITFIELDS パケット・データ 16または32ビット/サンプル

  • フィールドのサマリー

    クラスで宣言されたフィールド ImageWriteParam

    canOffsetTiles, canWriteCompressed, canWriteProgressive, canWriteTiles, compressionMode, compressionQuality, compressionType, compressionTypes, locale, MODE_COPY_FROM_METADATA, MODE_DEFAULT, MODE_DISABLED, MODE_EXPLICIT, preferredTileSizes, progressiveMode, tileGridXOffset, tileGridYOffset, tileHeight, tileWidth, tilingMode, tilingSet
    修飾子と型
    フィールド
    説明
    protected boolean
    このImageWriteParamでタイリング・グリッド座標パラメータを設定できる場合に、trueとなるbooleanです。
    protected boolean
    この書込み側が、圧縮を使用してイメージを書込みできる場合に、trueとなるbooleanです。
    protected boolean
    このImageWriteParamで、品質パスを増加させる段階的な処理として、イメージの書込みができる場合に、trueとなるbooleanです。
    protected boolean
    このImageWriteParamでタイルの幅と高さのパラメータを設定できる場合に、trueとなるbooleanです。
    protected int
    圧縮設定を制御するモードで、4つのMODE_*値の1つに設定する必要があります。
    protected float
    現在の圧縮品質設定を含むfloatです。
    protected String
    現在の圧縮方式名を含むStringで、設定されていない場合nullです。
    protected String[]
    使用可能な圧縮方式名を含むStringの配列です。
    protected Locale
    圧縮方式名と品質の説明をローカライズするために使用されるLocale、あるいはデフォルトのLocaleを使用するためのnullです。
    static final int
    今後の書込み機能を使用可能にするために、setTilingModesetProgressiveMode、またはsetCompressionModeのようなメソッドに渡すことのできる定数値です。
    static final int
    今後の書込み機能を使用可能にするために、setTilingModesetProgressiveModesetCompressionModeのようなメソッドに渡すことのできる定数値です。
    static final int
    今後の書込み機能を使用不可にするために、setTilingModesetProgressiveModesetCompressionModeのようなメソッドに渡すことのできる定数値です。
    static final int
    今後の書込み機能を使用可能にするために、setTilingModeまたはsetCompressionModeのようなメソッドに渡すことができる定数値です。
    protected Dimension[]
    適切なタイル・サイズの範囲ペアの配列です。
    protected int
    プログレッシブ・エンコーディングを制御するモードで、MODE_EXPLICIT以外の4つのMODE_*値の1つを設定する必要があります。
    protected int
    タイリングが設定されている場合、イメージの起点からタイル・グリッドの原点までの水平座標での距離で、設定されていない場合は0です。
    protected int
    タイリングが設定されている場合、イメージの起点からタイル・グリッドの原点までの垂直座標での距離で、設定されていない場合は0です。
    protected int
    タイリングが設定されている場合は各タイルの高さになり、設定されていない場合は0になります。
    protected int
    タイリングが設定されている場合は各タイルの幅になり、設定されていない場合は0になります。
    protected int
    タイリング設定を制御するモードで、4つのMODE_*値の1つに設定する必要があります。
    protected boolean
    タイリング・パラメータが指定されている場合に、trueとなるbooleanです。

    クラスで宣言されたフィールド IIOParam

    controller, defaultController, destinationOffset, destinationType, sourceBands, sourceRegion, sourceXSubsampling, sourceYSubsampling, subsamplingXOffset, subsamplingYOffset
    修飾子と型
    フィールド
    説明
    activateControllerメソッドが呼び出されたときに、このIIOParamオブジェクトの設定を指定するために使用するIIOParamControllerです。
    activateControllerメソッドが呼び出されたときに、このIIOParamオブジェクトの設定を指定するために使用するデフォルトのIIOParamControllerです。
    protected Point
    左上隅のデコードされたピクセルが配置されるデスティネーションのオフセットです。
    読込み時にデスティネーションのイメージを生成する、または書込み時に出力のカラー・タイプを設定するために使用するImageTypeSpecifierです。
    protected int[]
    使用するソース・バンドを示すint配列、またはnullです。
    protected Rectangle
    ソース領域、または何も設定されない場合はnullとなります。
    protected int
    水平方向に適用される間引きサブサンプリングです。
    protected int
    垂直方向に適用される間引きサブサンプリングです。
    protected int
    サブサンプリングする前にサブサンプリング・グリッドに適用される水平方向のオフセットです。
    protected int
    サブサンプリングする前にサブサンプリング・グリッドに適用される垂直方向のオフセットです。
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    すべてのパラメータおよびnull Localeのデフォルト値を持つBMPImageWriteParamオブジェクトを作成します。
    指定したLocaleおよびすべてのパラメータのデフォルト値で使用するBMPImageWriteParamセットを構築します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    boolean
    topDownパラメータの値を返します。
    void
    setTopDown(boolean topDown)
    これを設定すると、データは上から下方向に書き出されます。このため、最初の走査線が最初に書き込まれます。

    クラスで宣言されたメソッド ImageWriteParam

    canOffsetTiles, canWriteCompressed, canWriteProgressive, canWriteTiles, getBitRate, getCompressionMode, getCompressionQuality, getCompressionQualityDescriptions, getCompressionQualityValues, getCompressionType, getCompressionTypes, getLocale, getLocalizedCompressionTypeName, getPreferredTileSizes, getProgressiveMode, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileWidth, getTilingMode, isCompressionLossless, setCompressionMode, setCompressionQuality, setCompressionType, setProgressiveMode, setTiling, setTilingMode, unsetCompression, unsetTiling
    修飾子と型
    メソッド
    説明
    boolean
    書込み側が書込み中に0以外のグリッド座標でタイリングを実行できる場合に、trueを返します。
    boolean
    この書込み側が圧縮をサポートする場合、trueを返します。
    boolean
    品質を段階的に向上させる一連のパスとして、書込み側が出力イメージを書き出すことができる場合にtrueを返します。
    boolean
    書込み側が書込み中にタイリングを実行できる場合、trueを返します。
    float
    getBitRate(float quality)
    入力イメージ・データの各ビットに対して、指定された品質レベルで出力データのビット数の見積もりを示すfloatを返します。
    int
    圧縮がサポートされる場合、現在の圧縮モードを返します。
    float
    現在の圧縮品質設定を返します。
    圧縮品質レベルの表示または設定のためのユーザー・インタフェースの一部として、getCompressionQualityValuesとともに使用できるStringの配列を返します。
    float[]
    圧縮品質レベルの表示または設定のためのユーザー・インタフェースの一部として、getCompressionQualityDescriptionsとともに使用できるfloatの配列を返します。
    現在設定された圧縮方式を返すか、何も設定されていない場合はnullを返します。
    使用可能な圧縮方式のリストを配列またはStringとして返し、これらのインタフェースを使用して圧縮方式を選択できない場合にnullを返します。
    現在設定されているLocaleを返す、あるいはデフォルトLocaleだけがサポートされている場合nullになります。
    getLocaleが返したLocaleを使用して、現在の圧縮方式のローカライズされた名前を返します。
    タイルが出力ファイルまたはストリームでエンコードされるとき、タイルの正規のサイズ範囲を示すDimensionの配列を返します。
    int
    プログレッシブ方式でストリームを書き込むための、現在のモードを返します。
    int
    イメージが出力ストリームに書き込まれるとき、イメージの水平タイル・グリッド座標を返します。
    int
    イメージが出力ストリームに書き込まれるとき、イメージの垂直タイル・グリッド座標を返します。
    int
    イメージが出力ストリームに書き込まれるとき、イメージ内の各タイルの高さを返します。
    int
    イメージが出力ストリームに書き込まれるとき、イメージ内の各タイルの幅を返します。
    int
    タイリングがサポートされている場合、現在のタイリング・モードを返します。
    boolean
    現在の圧縮方式が、損失なし圧縮を提供する場合、trueを返します。
    void
    圧縮を実行するかどうかを指定し、実行する場合は、圧縮パラメータの指定方法を決定します。
    void
    setCompressionQuality(float quality)
    圧縮品質を0から1の間の値に設定します。
    void
    setCompressionType(String compressionType)
    getCompressionTypesで示される値の1つに圧縮方式を設定します。
    void
    品質を向上させる一連のスキャンがストリームに含まれるようなプログレッシブ・モードで、書込み側がイメージを書き出すことを指定します。
    void
    setTiling(int tileWidth, int tileHeight, int tileGridXOffset, int tileGridYOffset)
    イメージが出力ストリーム内でタイリングされるよう指定します。
    void
    setTilingMode(int mode)
    イメージを出力ストリーム中にタイリングするか、またタイリングする場合には、タイリング・パラメータの指定方法を指定します。
    void
    以前の圧縮方式と品質設定をすべて削除します。
    void
    setTilingへの呼出しで指定される、以前のタイル・グリッド・パラメータをすべて削除します。

    クラスで宣言されたメソッド IIOParam

    activateController, getController, getDefaultController, getDestinationOffset, getDestinationType, getSourceBands, getSourceRegion, getSourceXSubsampling, getSourceYSubsampling, getSubsamplingXOffset, getSubsamplingYOffset, hasController, setController, setDestinationOffset, setDestinationType, setSourceBands, setSourceRegion, setSourceSubsampling
    修飾子と型
    メソッド
    説明
    boolean
    このIIOParamオブジェクトに対してインストールされているIIOParamControllerをアクティブにし、結果の値を返します。
    現在インストールされているIIOParamControllerを返します。
    デフォルトのIIOParamControllerがある場合は、現在インストールされているコントローラとは関係なく、これを返します。
    ピクセルが配置されるデスティネーション・イメージのオフセットを返します。
    ImageTypeSpecifierとして、setDestination(ImageTypeSpecifier)の呼出しによって設定された場合、読込みによって返されるイメージのタイプを返します。
    int[]
    使用するソース・バンドのセットを返します。
    使用するソース領域を返します。
    int
    ピクセルごとに浮き出るソース列の数を返します。
    int
    ピクセルごとに浮き出るソース行の数を返します。
    int
    サブサンプリング・グリッドの水平方向のオフセットを返します。
    int
    サブサンプリング・グリッドの垂直方向のオフセットを返します。
    boolean
    このIIOParamオブジェクトにインストールされたコントローラがある場合はtrueを返します。
    void
    activateControllerメソッドを呼び出して、すべてのデフォルト・コントローラをオーバーライドするときに、このIIOParamオブジェクトの設定を指定するために使用するIIOParamControllerを設定します。
    void
    setDestinationOffset(Point destinationOffset)
    読込み時の場合は、将来デコードされるピクセルが配置されるオフセット、書込み時の場合は、領域が書き込まれるオフセットをデスティネーション・イメージに指定します。
    void
    ImageTypeSpecifierを使用して、目的のイメージ形式をデスティネーション・イメージに設定します。
    void
    setSourceBands(int[] sourceBands)
    使用するソース・バンドのインデックスを設定します。
    void
    setSourceRegion(Rectangle sourceRegion)
    処理対象のソース領域を設定します。
    void
    setSourceSubsampling(int sourceXSubsampling, int sourceYSubsampling, int subsamplingXOffset, int subsamplingYOffset)
    間引きサブサンプリングを指定して入出力に適用します。

    クラスオブジェクトで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    修飾子と型
    メソッド
    説明
    protected Object
    このオブジェクトのコピーを作成して、返します。
    boolean
    このオブジェクトと他のオブジェクトが等しいかどうかを示します。
    protected void
    削除予定のため非推奨: このAPI要素は、将来のバージョンで削除される可能性があります。
    最終決定は非推奨であり、将来のリリースで削除される可能性があります。
    final Class<?>
    このObjectの実行時クラスを返します。
    int
    このオブジェクトに対するハッシュ・コード値を返します。
    final void
    このオブジェクトのモニターで待機中のスレッドを1つ再開します。
    final void
    このオブジェクトのモニターで待機中のすべてのスレッドを再開します。
    オブジェクトの文字列表現を返します。
    final void
    現在のスレッドが目覚めるまで待機します。通常、notifiedまたはinterruptedです。
    final void
    wait(long timeoutMillis)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
    final void
    wait(long timeoutMillis, int nanos)
    現在のスレッドは、通常、notifiedまたはinterruptedであるか、一定のリアルタイムが経過するまで、目覚めるまで待機します。
  • コンストラクタの詳細

    • BMPImageWriteParam

      public BMPImageWriteParam(Locale locale)
      指定したLocaleおよびすべてのパラメータのデフォルト値で使用するBMPImageWriteParamセットを構築します。
      パラメータ:
      locale - 圧縮方式名と品質の説明をローカライズするために使用されるLocale、またはnull
    • BMPImageWriteParam

      public BMPImageWriteParam()
      すべてのパラメータおよびnull Localeのデフォルト値を持つBMPImageWriteParamオブジェクトを作成します。
  • メソッドの詳細

    • setTopDown

      public void setTopDown(boolean topDown)
      これを設定すると、データは上から下方向に書き出されます。このため、最初の走査線が最初に書き込まれます。
      パラメータ:
      topDown - データが上から下方向に書き込まれるかどうか。
    • isTopDown

      public boolean isTopDown()
      topDownパラメータの値を返します。 デフォルトは「false」です。
      戻り値:
      データが上から下方向に書き込まれるかどうか。