public class ImageWriteParam extends IIOParam
ImageWriter のインスタンスへ規定の「方法」についての情報を提供するために使用されます。
特定のイメージ形式のためのプラグインで、このクラスのサブクラスを定義し、ImageWriter が実装する getDefaultWriteParam メソッドからそのクラスのオブジェクトを返すことができます。たとえば、組み込み JPEG の書き込み側プラグインは、javax.imageio.plugins.jpeg.JPEGImageWriteParam のインスタンスを返します。
書き込むイメージの範囲は、まず IIOParam.setSourceRegion があれば、これが指定する矩形と、イメージの実際の範囲が交差することにより決定されます。生成される矩形の幅または高さが 0 の場合、書き込み側は IIOException をスローします。交差がある場合、最初にサブサンプルされたピクセルで書き込みが始まり、 で指定される水平および垂直のサブサンプリング係数に従って、交差した範囲内に追加のピクセルを組み込みます。
IIOParam.setSourceSubsampling
タイリング、プログレッシブエンコーディング、圧縮のような個々の機能は、4 つのモードのうちの 1 つに設定できます。MODE_DISABLED は機能を使用不可にします。MODE_DEFAULT は、書き込み側で制御されるパラメータ値で機能を使用可能にします。MODE_EXPLICIT は機能を使用可能にし、追加パラメータを提供するための set メソッドを使用可能にします。MODE_COPY_FROM_METADATA は、書き込み側に渡されるストリームとイメージメタデータオブジェクトから、該当するパラメータ値をコピーします。すべての機能のデフォルトは、MODE_COPY_FROM_METADATA です。標準以外の機能をサブクラス内で提供することは推奨しますが、同様のスキームの使用には不要です。
プラグインの書き込み側は、プラグイン固有の追加のインタフェースを実装するサブクラスを提供することにより、ImageWriteParam の機能を拡張できます。どのインタフェースが利用可能か、それがどのように使用されるかは、プラグインによります。書き込み側では、認識しない ImageWriteParam サブクラスの拡張機能はそのまま無視します。また、getDefaultWriteParam を介して、読み取り側自体の ImageWriteParam インスタンスを作成する場合、通常、使用不可であるオプション機能はすべて無視されます。
クエリーメソッドは、将来のために用意されている場合を除き、ImageWriter のすべての実装でサポートされる必要があります。たとえば、プログレッシブエンコーディングはオプションですが、サブサンプリングはサポートされる必要があります。
ImageReadParam| 修飾子と型 | フィールドと説明 |
|---|---|
protected boolean |
canOffsetTiles
この
ImageWriteParam でタイリンググリッド座標パラメータを設定できる場合に、true となる boolean です。 |
protected boolean |
canWriteCompressed
この書き込み側が、圧縮を使用してイメージを書き込みできる場合に、
true となる boolean です。 |
protected boolean |
canWriteProgressive
この
ImageWriteParam で、品質パスを増加させる段階的な処理として、イメージの書き込みができる場合に、true となる boolean です。 |
protected boolean |
canWriteTiles
この
ImageWriteParam でタイルの幅と高さのパラメータを設定できる場合に、true となる boolean です。 |
protected int |
compressionMode
圧縮設定を制御するモードで、4 つの
MODE_* 値の 1 つに設定する必要があります。 |
protected float |
compressionQuality
現在の圧縮品質設定を含む
float です。 |
protected String |
compressionType
現在の圧縮方式名を含む
String で、設定されていない場合 null です。 |
protected String[] |
compressionTypes
使用可能な圧縮方式名を含む
String の配列です。 |
protected Locale |
locale
圧縮方式名と品質の説明をローカライズするために使用される
Locale、あるいはデフォルトの Locale を使用するための null です。 |
static int |
MODE_COPY_FROM_METADATA
今後の書き込み機能を使用可能にするために、
setTilingMode、setProgressiveMode、または setCompressionMode のようなメソッドに渡すことのできる定数値です。 |
static int |
MODE_DEFAULT
今後の書き込み機能を使用可能にするために、
setTilingMode、setProgressiveMode、setCompressionMode のようなメソッドに渡すことのできる定数値です。 |
static int |
MODE_DISABLED
今後の書き込み機能を使用不可にするために、
setTilingMode、setProgressiveMode、setCompressionMode のようなメソッドに渡すことのできる定数値です。 |
static int |
MODE_EXPLICIT
今後の書き込み機能を使用可能にするために、
setTilingMode または setCompressionMode のようなメソッドに渡すことができる定数値です。 |
protected Dimension[] |
preferredTileSizes
適切なタイルサイズの範囲ペアの配列です。
|
protected int |
progressiveMode
プログレッシブエンコーディングを制御するモードで、
MODE_EXPLICIT 以外の 4 つの MODE_* 値の 1 つを設定する必要があります。 |
protected int |
tileGridXOffset
タイリングが設定されている場合、イメージの起点からタイルグリッドの原点までの水平座標での距離で、設定されていない場合は 0 です。
|
protected int |
tileGridYOffset
タイリングが設定されている場合、イメージの起点からタイルグリッドの原点までの垂直座標での距離で、設定されていない場合は 0 です。
|
protected int |
tileHeight
タイリングが設定されている場合は各タイルの高さになり、設定されていない場合は 0 になります。
|
protected int |
tileWidth
タイリングが設定されている場合は各タイルの幅になり、設定されていない場合は 0 になります。
|
protected int |
tilingMode
タイリング設定を制御するモードで、4 つの
MODE_* 値の 1 つに設定する必要があります。 |
protected boolean |
tilingSet
タイリングパラメータが指定されている場合に、
true となる boolean です。 |
controller, defaultController, destinationOffset, destinationType, sourceBands, sourceRegion, sourceXSubsampling, sourceYSubsampling, subsamplingXOffset, subsamplingYOffset| 修飾子 | コンストラクタと説明 |
|---|---|
protected |
ImageWriteParam()
空の
ImageWriteParam を構築します。 |
|
ImageWriteParam(Locale locale)
指定された
Locale を使用するために設定される ImageWriteParam を構築します。 |
| 修飾子と型 | メソッドと説明 |
|---|---|
boolean |
canOffsetTiles()
書き込み側が書き込み中に 0 以外のグリッド座標でタイリングを実行できる場合に、
true を返します。 |
boolean |
canWriteCompressed()
この書き込み側が圧縮をサポートする場合、
true を返します。 |
boolean |
canWriteProgressive()
品質を段階的に向上させる一連のパスとして、書き込み側が出力イメージを書き出すことができる場合に
true を返します。 |
boolean |
canWriteTiles()
書き込み側が書き込み中にタイリングを実行できる場合、
true を返します。 |
float |
getBitRate(float quality)
入力イメージデータの各ビットに対して、指定された品質レベルで出力データのビット数の見積もりを示す
float を返します。 |
int |
getCompressionMode()
圧縮がサポートされる場合、現在の圧縮モードを返します。
|
float |
getCompressionQuality()
現在の圧縮品質設定を返します。
|
String[] |
getCompressionQualityDescriptions()
圧縮品質レベルの表示または設定のためのユーザーインタフェースの一部として、
getCompressionQualityValues とともに使用できる String の配列を返します。 |
float[] |
getCompressionQualityValues()
圧縮品質レベルの表示または設定のためのユーザーインタフェースの一部として、
getCompressionQualityDescriptions とともに使用できる float の配列を返します。 |
String |
getCompressionType()
現在設定された圧縮方式を返すか、何も設定されていない場合は
null を返します。 |
String[] |
getCompressionTypes()
使用可能な圧縮方式のリストを配列または
String として返し、これらのインタフェースを使用して圧縮方式を選択できない場合に null を返します。 |
Locale |
getLocale()
現在設定されている
Locale を返す、あるいはデフォルト Locale だけがサポートされている場合 null になります。 |
String |
getLocalizedCompressionTypeName()
getLocale が返した Locale を使用して、現在の圧縮方式のローカライズされた名前を返します。 |
Dimension[] |
getPreferredTileSizes()
タイルが出力ファイルまたはストリームで符号化されるとき、タイルの正規のサイズ範囲を示す
Dimension の配列を返します。 |
int |
getProgressiveMode()
プログレッシブ方式でストリームを書き込むための、現在のモードを返します。
|
int |
getTileGridXOffset()
イメージが出力ストリームに書き込まれるとき、イメージの水平タイルグリッド座標を返します。
|
int |
getTileGridYOffset()
イメージが出力ストリームに書き込まれるとき、イメージの垂直タイルグリッド座標を返します。
|
int |
getTileHeight()
イメージが出力ストリームに書き込まれるとき、イメージ内の各タイルの高さを返します。
|
int |
getTileWidth()
イメージが出力ストリームに書き込まれるとき、イメージ内の各タイルの幅を返します。
|
int |
getTilingMode()
タイリングがサポートされている場合、現在のタイリングモードを返します。
|
boolean |
isCompressionLossless()
現在の圧縮方式が、損失なし圧縮を提供する場合、
true を返します。 |
void |
setCompressionMode(int mode)
圧縮を実行するかどうかを指定し、実行する場合は、圧縮パラメータの指定方法を決定します。
|
void |
setCompressionQuality(float quality)
圧縮品質を
0 から 1 の間の値に設定します。 |
void |
setCompressionType(String compressionType)
getCompressionTypes で示される値の 1 つに圧縮方式を設定します。 |
void |
setProgressiveMode(int mode)
品質を向上させる一連のスキャンがストリームに含まれるようなプログレッシブモードで、書き込み側がイメージを書き出すことを指定します。
|
void |
setTiling(int tileWidth, int tileHeight, int tileGridXOffset, int tileGridYOffset)
イメージが出力ストリーム内でタイリングされるよう指定します。
|
void |
setTilingMode(int mode)
イメージを出力ストリーム中にタイリングするか、またタイリングする場合には、タイリングパラメータの指定方法を指定します。
|
void |
unsetCompression()
以前の圧縮方式と品質設定をすべて削除します。
|
void |
unsetTiling()
setTiling への呼び出しで指定される、以前のタイルグリッドパラメータをすべて削除します。 |
activateController, getController, getDefaultController, getDestinationOffset, getDestinationType, getSourceBands, getSourceRegion, getSourceXSubsampling, getSourceYSubsampling, getSubsamplingXOffset, getSubsamplingYOffset, hasController, setController, setDestinationOffset, setDestinationType, setSourceBands, setSourceRegion, setSourceSubsamplingpublic static final int MODE_DISABLED
setTilingMode、setProgressiveMode、setCompressionMode のようなメソッドに渡すことのできる定数値です。つまり、このモードが設定されている場合、ストリームのタイリング、プログレッシブエンコーディング、または圧縮は行われず、該当するアクセス用メソッドは IllegalStateException をスローします。public static final int MODE_DEFAULT
setTilingMode、setProgressiveMode、setCompressionMode のようなメソッドに渡すことのできる定数値です。つまり、このモードが使用可能な場合、書き込み側がプラグインに依存した方法で内部で選択した実際的なデフォルトに従って、ストリームのタイリング、プログレッシブエンコーディング、または圧縮が行われ、該当するアクセス用メソッドは IllegalStateException をスローします。public static final int MODE_EXPLICIT
setTilingMode または setCompressionMode のようなメソッドに渡すことができる定数値です。つまり、このモードが設定されている場合、このクラス内の対応する set メソッドが提供し、対応する get メソッドから取得できる追加情報に従って、ストリームのタイリングまたは圧縮が行われます。このモードは段階的な出力ではサポートされません。public static final int MODE_COPY_FROM_METADATA
setTilingMode、setProgressiveMode、または setCompressionMode のようなメソッドに渡すことのできる定数値です。つまり、このモードが使用可能な場合、書き込み操作に渡されるイメージメタデータまたはストリームのコンテンツ、あるいはその両方のコンテンツに基づいて、ストリームのタイリング、プログレッシブエンコーディング、または圧縮が行われ、該当するアクセス用メソッドは IllegalStateException をスローします。
これはすべての機能のデフォルトモードなので、メタデータを含む読み込みに続いてメタデータを含む書き込みを行うと、可能な限り多くの情報が保存されます。
protected boolean canWriteTiles
ImageWriteParam でタイルの幅と高さのパラメータを設定できる場合に、true となる boolean です。デフォルト値は false です。サブクラスでは、値を手動で設定する必要があります。
タイルの書き込みをサポートしないサブクラスでは、この値を false に設定する必要があります。
protected int tilingMode
MODE_* 値の 1 つに設定する必要があります。デフォルトは MODE_COPY_FROM_METADATA です。
タイルの書き込みを行わないサブクラスでは、この値を無視できます。
protected Dimension[] preferredTileSizes
null で、これは適切なサイズがないことを示します。値が null でない場合、2 以上の同じ長さを持つ必要があります。
タイルの書き込みをサポートしないサブクラスでは、この値を無視できます。
protected boolean tilingSet
true となる boolean です。
タイルの書き込みをサポートしないサブクラスでは、この値を無視できます。
protected int tileWidth
タイリングをサポートしないサブクラスでは、この値を無視できます。
protected int tileHeight
0 です。
タイリングをサポートしないサブクラスでは、この値を無視できます。
protected boolean canOffsetTiles
ImageWriteParam でタイリンググリッド座標パラメータを設定できる場合に、true となる boolean です。デフォルト値は false です。サブクラスでは、値を手動で設定する必要があります。
タイルの書き込みをサポートしない、または書き込みをサポートしても、タイルの座標化をサポートしないサブクラスでは、この値は false に設定する必要があります。
protected int tileGridXOffset
0 です。
タイルの座標化をサポートしないサブクラスでは、この値を無視できます。
protected int tileGridYOffset
0 です。
タイルの座標化をサポートしないサブクラスでは、この値を無視できます。
protected boolean canWriteProgressive
ImageWriteParam で、品質パスを増加させる段階的な処理として、イメージの書き込みができる場合に、true となる boolean です。デフォルト値は false です。サブクラスでは、値を手動で設定する必要があります。
プログレッシブエンコーディングをサポートしないサブクラスでは、この値は false に設定する必要があります。
protected int progressiveMode
MODE_EXPLICIT 以外の 4 つの MODE_* 値の 1 つを設定する必要があります。デフォルトは MODE_COPY_FROM_METADATA です。
プログレッシブエンコーディングをサポートしないサブクラスでは、この値を無視できます。
protected boolean canWriteCompressed
true となる boolean です。デフォルト値は false です。サブクラスでは、値を手動で設定する必要があります。
圧縮をサポートしないサブクラスでは、この値は false に設定する必要があります。
protected int compressionMode
MODE_* 値の 1 つに設定する必要があります。デフォルトは MODE_COPY_FROM_METADATA です。
圧縮をサポートしないサブクラスでは、この値を無視できます。
protected String[] compressionTypes
String の配列です。サブクラスでは、値を手動で設定する必要があります。
圧縮をサポートしないサブクラスでは、この値を無視できます。
protected String compressionType
String で、設定されていない場合 null です。
圧縮をサポートしないサブクラスでは、この値を無視できます。
protected float compressionQuality
float です。初期値は 1.0F です。
圧縮をサポートしないサブクラスでは、この値を無視できます。
protected Locale locale
Locale、あるいはデフォルトの Locale を使用するための null です。サブクラスでは、値を手動で設定する必要があります。protected ImageWriteParam()
ImageWriteParam を構築します。インスタンス変数を適切に設定するのは、サブクラスの仕事になります。public ImageWriteParam(Locale locale)
Locale を使用するために設定される ImageWriteParam を構築します。locale - 圧縮方式名と品質の説明をローカライズするために使用される Locale、または null。public Locale getLocale()
Locale を返す、あるいはデフォルト Locale だけがサポートされている場合 null になります。Locale、または null。public boolean canWriteTiles()
true を返します。このメソッドが false を返す場合、setTiling が UnsupportedOperationException をスローします。true。canOffsetTiles(), setTiling(int, int, int, int)public boolean canOffsetTiles()
true を返します。このメソッドが false を返す場合、グリッド座標の引数がどちらも 0 でないとき、setTiling は UnsupportedOperationException をスローします。canWriteTiles が false を返す場合、このメソッドも false を返します。true。canWriteTiles(), setTiling(int, int, int, int)public void setTilingMode(int mode)
MODE_DISABLED - イメージはタイリングされません。setTiling は IllegalStateException をスローします。
MODE_DEFAULT - イメージはデフォルトパラメータを使用してタイリングされます。setTiling は IllegalStateException をスローします。
MODE_EXPLICIT - イメージは setTiling メソッドで与えられるパラメータに従ってタイリングされます。前もって設定されたタイリングパラメータはすべて破棄されます。
MODE_COPY_FROM_METADATA - イメージは、書き込みに渡されるメタデータオブジェクトに準拠します。setTiling は IllegalStateException をスローします。
mode - タイリングに使用するモード。UnsupportedOperationException - canWriteTiles が false を返す場合。IllegalArgumentException - mode が上記のモードのいずれでもない場合。setTiling(int, int, int, int), getTilingMode()public int getTilingMode()
UnsupportedOperationException をスローします。UnsupportedOperationException - canWriteTiles が false を返す場合。setTilingMode(int)public Dimension[] getPreferredTileSizes()
Dimension の配列を返します。返される配列はコピーです。
情報はペアで返されます。ペアの最初の要素には、包括的な最小の幅と高さが、次の要素には包括的な最大の幅と高さが含まれます。あわせて、各ペアはサイズの有効範囲を定義します。固定サイズを指定するには、両方の要素に同じ幅と高さを使用します。任意の範囲を指定するには、Dimension の実際の配列の代わりに null の値が使用されます。
コンストラクタに配列が指定されなくてもタイリングが使用できる場合、このメソッドは null を返します。
Dimension の配列、または null。UnsupportedOperationException - プラグインがタイリングをサポートしない場合。public void setTiling(int tileWidth,
int tileHeight,
int tileGridXOffset,
int tileGridYOffset)
tileWidth と tileHeight パラメータは、ファイル内のタイルの幅と高さを指定します。タイルの幅または高さがイメージの幅または高さよりも大きい場合、イメージはその範囲内にタイリングされません。
canOffsetTiles が false を返す場合、tileGridXOffset と tileGridYOffset パラメータは 0 になります。
tileWidth - 各タイルの幅。tileHeight - 各タイルの高さ。tileGridXOffset - タイルグリッドの水平座標。tileGridYOffset - タイルグリッドの垂直座標。UnsupportedOperationException - プラグインがタイリングをサポートしない場合。IllegalStateException - タイリングモードが MODE_EXPLICIT でない場合。UnsupportedOperationException - プラグインがグリッド座標をサポートせず、グリッド座標がどちらも 0 でない場合。IllegalArgumentException - タイルサイズが getPreferredTileSizes が返した使用可能な範囲内にない場合。IllegalArgumentException - tileWidth または tileHeight が 0 以下の場合。canWriteTiles, canOffsetTiles, getTileWidth(), getTileHeight(), getTileGridXOffset(), getTileGridYOffset()public void unsetTiling()
setTiling への呼び出しで指定される、以前のタイルグリッドパラメータをすべて削除します。
デフォルト実装では、インスタンス変数 tileWidth、tileHeight、tileGridXOffset、tileGridYOffset を 0 に設定します。
UnsupportedOperationException - プラグインがタイリングをサポートしない場合。IllegalStateException - タイリングモードが MODE_EXPLICIT でない場合。setTiling(int, int, int, int)public int getTileWidth()
IllegalStateException がスローされます。UnsupportedOperationException - プラグインがタイリングをサポートしない場合。IllegalStateException - タイリングモードが MODE_EXPLICIT でない場合。IllegalStateException - タイリングパラメータが設定されていない場合。setTiling(int, int, int, int), getTileHeight()public int getTileHeight()
IllegalStateException がスローされます。UnsupportedOperationException - プラグインがタイリングをサポートしない場合。IllegalStateException - タイリングモードが MODE_EXPLICIT でない場合。IllegalStateException - タイリングパラメータが設定されていない場合。setTiling(int, int, int, int), getTileWidth()public int getTileGridXOffset()
IllegalStateException がスローされます。UnsupportedOperationException - プラグインがタイリングをサポートしない場合。IllegalStateException - タイリングモードが MODE_EXPLICIT でない場合。IllegalStateException - タイリングパラメータが設定されていない場合。setTiling(int, int, int, int), getTileGridYOffset()public int getTileGridYOffset()
IllegalStateException がスローされます。UnsupportedOperationException - プラグインがタイリングをサポートしない場合。IllegalStateException - タイリングモードが MODE_EXPLICIT でない場合。IllegalStateException - タイリングパラメータが設定されていない場合。setTiling(int, int, int, int), getTileGridXOffset()public boolean canWriteProgressive()
true を返します。true。setProgressiveMode(int), getProgressiveMode()public void setProgressiveMode(int mode)
UnsupportedOperationException がスローされます。
モード引数は、プログレッションパラメータの選択方法を指定し、MODE_DISABLED、MODE_COPY_FROM_METADATA、MODE_DEFAULT のどちらかである必要があります。それ以外の場合は IllegalArgumentException がスローされます。
モードは、次のように解釈されます。
MODE_DISABLED - プログレッションなし。プログレッションをオフに設定する場合に使用する
MODE_COPY_FROM_METADATA - 出力イメージは、書き込み側に渡されたメタデータオブジェクト内の任意のプログレッションパラメータを使用します。
MODE_DEFAULT - イメージは、書き込み側で選択したパラメータで、段階的に書き込まれます。
デフォルトは MODE_COPY_FROM_METADATA です。
mode - 出力ストリーム内でプログレッションを設定するためのモード。UnsupportedOperationException - 書き込み側がプログレッシブエンコーディングをサポートしない場合。IllegalArgumentException - mode が上記のモードのいずれでもない場合。getProgressiveMode()public int getProgressiveMode()
UnsupportedOperationException - 書き込み側がプログレッシブエンコーディングをサポートしない場合。setProgressiveMode(int)public boolean canWriteCompressed()
true を返します。true。public void setCompressionMode(int mode)
mode 引数は、次のように解釈される 4 つのモードのうちの 1 つである必要があります。
MODE_DISABLED - モデルが MODE_DISABLED に設定されると、圧縮方式または圧縮パラメータを照会または変更するメソッドは IllegalStateException をスローします (通常、このプラグインで圧縮がサポートされる場合)。JPEG などの一部の書き込み側では、通常、圧縮解除された出力は提供されません。この場合、モードを MODE_DISABLED に設定しようとすると UnsupportedOperationException がスローされ、モードは変更されません。
MODE_EXPLICIT - この ImageWriteParam で指定される圧縮方式と品質設定を使用して圧縮します。以前に設定された圧縮パラメータはすべて破棄されます。
MODE_COPY_FROM_METADATA - 書き込み側に渡されるメタデータオブジェクトで指定される任意の圧縮パラメータを使用します。
MODE_DEFAULT - デフォルトの圧縮パラメータを使用します。
デフォルトは MODE_COPY_FROM_METADATA です。
mode - 出力ストリーム内で圧縮を設定するためのモード。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合、または要求されたモードをサポートしない場合。IllegalArgumentException - mode が上記のモードのいずれでもない場合。getCompressionMode()public int getCompressionMode()
UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。setCompressionMode(int)public String[] getCompressionTypes()
String として返し、これらのインタフェースを使用して圧縮方式を選択できない場合に null を返します。返される配列はコピーです。
書き込み側が、規定の圧縮方式を 1 つだけ提供する場合、圧縮方式を指定する必要はありません。圧縮方式を指定する必要があるのは、ユーザーが異なるスキーム間で意味のある選択ができる場合だけです。
デフォルト実装では、圧縮がサポートされているかを調べ、実装されていない場合は UnsupportedOperationException をスローします。実装されている場合は、それが null 以外の場合は compressionTypes インスタンス変数のクローンを返し、それ以外の場合は null を返します。
String の配列、または null。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。public void setCompressionType(String compressionType)
getCompressionTypes で示される値の 1 つに圧縮方式を設定します。null の値が渡される場合、以前の設定はすべて削除されます。
デフォルト実装では、圧縮がサポートされるか、圧縮モードが MODE_EXPLICIT であるかを調べます。これに当てはまる場合、getCompressionTypes を呼び出し、compressionType が正規の値の 1 つであるかを調べます。正規の値の場合、compressionType インスタンス変数が設定されます。compressionType が null の場合、インスタンス変数はチェックを実行せずに設定されます。
compressionType - getCompressionTypes が返した String の 1 つ、または以前の設定をすべて削除するための null。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。UnsupportedOperationException - 設定可能な圧縮方式がない場合。IllegalArgumentException - compressionType が null ではないが、getCompressionTypes によって返された値の 1 つではない場合。getCompressionTypes(), getCompressionType(), unsetCompression()public String getCompressionType()
null を返します。方式は、getCompressionTypes が返した中から String として返されます。圧縮方式が設定されていない場合、null を返します。
デフォルト実装では、圧縮がサポートされるか、圧縮モードが MODE_EXPLICIT であるかを調べます。これに当てはまる場合、compressionType インスタンス変数の値を返します。
String、方式が設定されていない場合は null。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。setCompressionType(java.lang.String)public void unsetCompression()
デフォルト実装では、インスタンス変数 compressionType を null に、インスタンス変数 compressionQuality を 1.0F に設定します。
UnsupportedOperationException - プラグインが圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。setCompressionType(java.lang.String), setCompressionQuality(float)public String getLocalizedCompressionTypeName()
getLocale が返した Locale を使用して、現在の圧縮方式のローカライズされた名前を返します。
デフォルト実装では、圧縮がサポートされるか、圧縮モードが MODE_EXPLICIT であるかを調べます。これに当てはまる場合、compressionType が null 以外のとき、便宜上 getCompressionType の値が返されます。
String。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。IllegalStateException - 圧縮方式が設定されていない場合。public boolean isCompressionLossless()
true を返します。プラグインが規定の圧縮方式を 1 つだけ提供する場合は、最初に setCompressionType を呼び出さずに、このメソッドを呼び出すことができます。
複数の圧縮方式があり、そのどれもが設定されていない場合、IllegalStateException がスローされます。
デフォルト実装では、圧縮がサポートされるか、圧縮モードが MODE_EXPLICIT であるかを調べます。これに当てはまる場合、getCompressionTypes() が null であるとき、あるいは getCompressionType() が null でないとき、便宜上 true が返されます。
true。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。IllegalStateException - 正規の圧縮方式のセットが null でなく、現在の圧縮方式が null の場合。public void setCompressionQuality(float quality)
0 から 1 の間の値に設定します。デフォルトでは、1 つの圧縮品質設定だけがサポートされます。書き込み側は、多くの制御ができる ImageWriteParam の拡張バージョンを提供できます。損失のある圧縮スキームでは、圧縮品質はファイルサイズとイメージ品質との兼ね合いを調整する必要があります。たとえば、JPEG イメージを書き込むときに、量子化テーブルを選択して調整します。損失のないスキームでは、圧縮品質はファイルサイズと圧縮実行にかかる時間との兼ね合いを調整するために使用できます。たとえば、PNG イメージを書き込むときに、行フィルタの最適化と ZLIB 圧縮レベルの設定により調整します。
一般に、圧縮品質の設定値 0.0 は「圧縮率の高さを重視」し、設定値 1.0 は「画質の高さを重視」するものと解釈できます。
複数の圧縮方式があり、そのどれもが設定されていない場合、IllegalStateException がスローされます。
デフォルト実装では、圧縮がサポートされるか、圧縮モードが MODE_EXPLICIT であるかを調べます。これに当てはまる場合、getCompressionTypes() が null を返す、あるいは compressionType が null でないとき、compressionQuality インスタンス変数を設定します。
quality - 希望する品質レベルを示す 0 から 1 までの float。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。IllegalStateException - 正規の圧縮方式のセットが null でなく、現在の圧縮方式が null の場合。IllegalArgumentException - quality が 0 から 1 の範囲内にない場合。getCompressionQuality()public float getCompressionQuality()
複数の圧縮方式があり、そのどれもが設定されていない場合、IllegalStateException がスローされます。
デフォルト実装では、圧縮がサポートされるか、圧縮モードが MODE_EXPLICIT であるかを調べます。これに当てはまる場合、getCompressionTypes() が null、あるいは getCompressionType() が null でないとき、compressionQuality インスタンス変数の値を返します。
UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。IllegalStateException - 正規の圧縮方式のセットが null でなく、現在の圧縮方式が null の場合。setCompressionQuality(float)public float getBitRate(float quality)
float を返します。通常、値は 0 から 1 になります。ここで、値が小さいほど圧縮が大きいことを示します。見積もりが使用できないことを示すために、特別な値 -1.0F が使用されます。
複数の圧縮方式があり、そのどれもが設定されていない場合、IllegalStateException がスローされます。
デフォルト実装では、圧縮がサポートされるか、圧縮モードが MODE_EXPLICIT であるかを調べます。これに当てはまる場合、getCompressionTypes() が null のとき、あるいは getCompressionType() が null でなく、quality が範囲内にあるときに、-1.0 を返します。
quality - ビットレートが照会される品質設定。-1.0F。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。IllegalStateException - 正規の圧縮方式のセットが null でなく、現在の圧縮方式が null の場合。IllegalArgumentException - quality が 0 から 1 の範囲内にない場合。public String[] getCompressionQualityDescriptions()
getCompressionQualityValues とともに使用できる String の配列を返します。インデックス i を持つ String は、getCompressionQualityValues[i] から getCompressionQualityValues[i + 1] までの品質レベル範囲の説明を提供します。getCompressionQualityValues から返された配列の長さは、getCompressionQualityDescriptions から返された配列の長さより、常に長くなります。
例として、文字列「Good」、「Better」、「Best」は、範囲 [0, .33)、[.33, .66)、[.66, 1.0] に関連付けることができます。この場合、getCompressionQualityDescriptions は { "Good", "Better", "Best" } を返し、getCompressionQualityValues は { 0.0F, .33F, .66F, 1.0F } を返します。
説明が使用できない場合、null が返されます。getCompressionQualityValues から null が返される場合、このメソッドも null を返す必要があります。
説明は、null でない場合、getLocale が返した Locale に対してローカライズする必要があります。
複数の圧縮方式があり、そのどれもが設定されていない場合、IllegalStateException がスローされます。
デフォルト実装では、圧縮がサポートされるか、圧縮モードが MODE_EXPLICIT であるかを調べます。これに当てはまる場合、getCompressionTypes() が null のとき、あるいは getCompressionType() が null でないときに null を返します。
String の配列。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。IllegalStateException - 正規の圧縮方式のセットが null でなく、現在の圧縮方式が null の場合。getCompressionQualityValues()public float[] getCompressionQualityValues()
getCompressionQualityDescriptions とともに使用できる float の配列を返します。詳細は、getCompressionQualityDescriptions を参照してください。
説明が使用できない場合、null が返されます。getCompressionQualityDescriptions から null が返される場合、このメソッドは null も返す必要があります。
複数の圧縮方式があり、そのどれもが設定されていない場合、IllegalStateException がスローされます。
デフォルト実装では、圧縮がサポートされるか、圧縮モードが MODE_EXPLICIT であるかを調べます。これに当てはまる場合、getCompressionTypes() が null のとき、あるいは getCompressionType() が null でないときに null を返します。
getCompressionQualityDescriptions からの String で記述される、圧縮品質レベル間の範囲を示す float の配列。UnsupportedOperationException - 書き込み側が圧縮をサポートしない場合。IllegalStateException - 圧縮モードが MODE_EXPLICIT でない場合。IllegalStateException - 正規の圧縮方式のセットが null でなく、現在の圧縮方式が null の場合。getCompressionQualityDescriptions() バグまたは機能を送信
詳細な API リファレンスおよび開発者ドキュメントについては、Java SE のドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright © 1993, 2013, Oracle and/or its affiliates. All rights reserved.