コンテンツにスキップ

ImageFunction

ImageFunction クラスは、画像を操作するクラスです。

このクラスからオブジェクトを作成することはできません。

メンバー一覧

メソッド


operateAffine

メソッド

引数

引数 既定値 説明
dst   重ね合わせ先の Bitmap オブジェクトを指定します。
src   重ね合わせ元の Bitmap オブジェクトを指定します。
A   A パラメータです。affine 引数によって解釈が変わります。
B   B パラメータです。affine 引数によって解釈が変わります。
C   C パラメータです。affine 引数によって解釈が変わります。
D   D パラメータです。affine 引数によって解釈が変わります。
E   E パラメータです。affine 引数によって解釈が変わります。
F   F パラメータです。affine 引数によって解釈が変わります。
srcrect null 重ね合わせる矩形を ( 重ね合わせ元 Bitmap の画像位置における ) ピクセル単位で Rect オブジェクトで指定します。
未指定時全体が対象となります。
cliprect null クリッピング矩形を ( 重ね合わせ先 Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時クリッピングは行われません。
affine   続く6つの引数 (A ~ F パラメータ)をどのように扱うかを指定します。
真を指定すると、6つのパラメータはそれぞれ以下のように解釈されます。
A : 2Dアフィン変換行列の a
B : 2Dアフィン変換行列の b
C : 2Dアフィン変換行列の c
D : 2Dアフィン変換行列の d
E : 2Dアフィン変換行列の tx
F : 2Dアフィン変換行列の ty
アフィン変換により、重ね合わせ元の画像位置 (x, y) ( ただし、重ね合わせ元矩形の左上隅を (0, 0) とする ) は以下の式により、重ね合わせ先の画像位置 (x', y')に変換されます。
x' = ax + cy + tx
y' = bx + dy + ty
偽を指定すると、6つのパラメータはそれぞれ以下のように解釈されます。
A : コピー元矩形の左上隅の点の、コピー先での画像位置における X 座標位置(x0)
B : コピー元矩形の左上隅の点の、コピー先での画像位置における Y 座標位置(y0)
C : コピー元矩形の右上隅の点の、コピー先での画像位置における X 座標位置(x1)
D : コピー元矩形の右上隅の点の、コピー先での画像位置における Y 座標位置(y1)
E : コピー元矩形の左下隅の点の、コピー先での画像位置における X 座標位置(x2)
F : コピー元矩形の左下隅の点の、コピー先での画像位置における Y 座標位置(y2)
偽を指定した場合、重ね合わせ元の右下隅に対応する、重ね合わせ先位置(x3, y3)は自動的に以下の式によって計算されます。
x3 = x1 - x0 + x2
y3 = y1 - y0 + y2
mode omAlpha 演算のモードを指定します。
**omPsNormal** が指定された場合はPhotoshop互換のアルファ合成が行われます(現バージョンでは未実装です)。
**omPsAdditive** が指定された場合はPhotoshop互換の覆い焼き(リニア)合成が行われます(現バージョンでは未実装です)。
**omPsSubtractive** が指定された場合はPhotoshop互換の焼き込み(リニア)合成が行われます(現バージョンでは未実装です)。
**omPsMultiplicative** が指定された場合はPhotoshop互換の乗算合成が行われます(現バージョンでは未実装です)。
**omPsScreen** が指定された場合はPhotoshop互換のスクリーン合成が行われます(現バージョンでは未実装です)。
**omPsOverlay** が指定された場合はPhotoshop互換のオーバーレイ合成が行われます(現バージョンでは未実装です)。
**omPsHardLight** が指定された場合はPhotoshop互換のハードライト合成が行われます(現バージョンでは未実装です)。
**omPsSoftLight** が指定された場合はPhotoshop互換のソフトライト合成が行われます(現バージョンでは未実装です)。
**omPsColorDodge** が指定された場合はPhotoshop互換の覆い焼きカラー合成が行われます(現バージョンでは未実装です)。
**omPsColorDodge5** が指定された場合はPhotoshopのバージョン5.x 以下と互換の覆い焼きカラー合成が行われます(現バージョンでは未実装です)。
**omPsColorBurn** が指定された場合はPhotoshop互換の焼き込みカラー合成が行われます(現バージョンでは未実装です)。
**omPsLighten** が指定された場合はPhotoshop互換の比較(明)合成が行われます(現バージョンでは未実装です)。
**omPsDarken** が指定された場合はPhotoshop互換の比較(暗)合成が行われます(現バージョンでは未実装です)。
**omPsDifference** が指定された場合はPhotoshop互換の差の絶対値合成が行われます(現バージョンでは未実装です)。
**omPsDifference5** が指定された場合はPhotoshopのバージョン 5.x 以下と互換の差の絶対値合成が行われます(現バージョンでは未実装です)。
**omPsExclusion** が指定された場合はPhotoshop互換の除外合成が行われます(現バージョンでは未実装です)。
**omAdditive** が指定された場合は加算合成が行われます(現バージョンでは未実装です)。
**omSubtractive** が指定された場合は減算合成が行われます(現バージョンでは未実装です)。
**omMultiplicative** が指定された場合は乗算合成が行われます(現バージョンでは未実装です)。
**omDodge** が指定された場合は覆い焼き合成が行われます(現バージョンでは未実装です)。
**omDarken** が指定された場合は比較(暗)合成が行われます(現バージョンでは未実装です)。
**omLighten** が指定された場合は比較(明)合成が行われます(現バージョンでは未実装です)。
**omScreen** が指定された場合はスクリーン乗算合成が行われます(現バージョンでは未実装です)。
**omAlpha** が指定された場合はアルファ合成が行われます。
**omAddAlpha** が指定された場合は加算アルファ合成が行われます。この場合は、face が dfOpaque かつ hda が偽のとき、type 引数に stFastLinear を指定することにより線形補間が可能です。
**omOpaque** が指定された場合は src のアルファ情報は無視され、src は常に完全不透明であると見なされます。この場合は、face が dfOpaque かつ hda が偽のとき、type 引数に stFastLinear を指定することにより線形補間が可能です。
face dfAlpha 描画方式を指定します。
**dfAlpha** が指定された場合は画像はアルファチャンネルつき画像と見なされ、描画されます。
**dfAddAlpha** が指定された場合は画像は加算アルファチャンネルつき画像として見なされ、描画されます。
**dfOpaque** が指定された場合は画像はすべて完全不透明であると見なされ、描画されます。
opa 255 重ね合わせの不透明度 ( 0 ~ 255 ) を指定します。
type stNearest アフィン変換のタイプを指定します。
**stNearest** : 最近傍点法が用いられます
**stFastLinear** : 低精度の線形補間が用いられます(一部実装)
**stLinear** : 線形補間が用いられます(未実装)
**stCubic** : 3次元補間が用いられます(未実装)
速度は stNearest > stFastLinear > stLinear > stCubic の順に高速ですが、画質は速度が
速ければ速いモードほど低画質になります。
stFastLinear や stLinear, stCubic に対しては、stRefNoClip をビット論理和で追加指定
することができ、この場合は、コピーするビットマップの領域外を参照して色を合成することを
許可します。これを指定しない場合は、転送元ビットマップの周囲に余裕があったとしても、
転送元ビットマップの範囲外を参照することはありません(範囲外の色はもっとも近い位置にある
範囲内のピクセルの色と見なされます)。
hda false アルファチャンネルを保護するかどうかを指定します。

解説

アフィン変換演算合成

指定された重ね合わせ元 Bitmap の矩形を、重ね合わせ先にアフィン変換を行いながら演算合成します。


operateRect

メソッド

引数

引数 既定値 説明
dst   重ね合わせ先の Bitmap オブジェクトを指定します。
dleft   演算先の矩形の左端位置を ( 演算先 Bitmap の画像位置における ) ピクセル単位で指定します。
dtop   演算先の矩形の上端位置を ( 演算先 Bitmap の画像位置における ) ピクセル単位で指定します。
src   演算元の Bitmap オブジェクトを指定します。
未指定時全体が対象になります。
srcrect null 演算する矩形を ( 演算元 Bitmap の画像位置における ) ピクセル単位で Rect オブジェクトで指定します。
未指定時全体が対象になります。
cliprect null クリッピング矩形を ( 重ね合わせ先 Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時クリッピングは行われません。
mode omAuto 演算のモードを指定します。
**omPsNormal** が指定された場合はPhotoshop互換のアルファ合成が行われます。
**omPsAdditive** が指定された場合はPhotoshop互換の覆い焼き(リニア)合成が行われます。
**omPsSubtractive** が指定された場合はPhotoshop互換の焼き込み(リニア)合成が行われます。
**omPsMultiplicative** が指定された場合はPhotoshop互換の乗算合成が行われます。
**omPsScreen** が指定された場合はPhotoshop互換のスクリーン合成が行われます。
**omPsOverlay** が指定された場合はPhotoshop互換のオーバーレイ合成が行われます。
**omPsHardLight** が指定された場合はPhotoshop互換のハードライト合成が行われます。
**omPsSoftLight** が指定された場合はPhotoshop互換のソフトライト合成が行われます。
**omPsColorDodge** が指定された場合はPhotoshop互換の覆い焼きカラー合成が行われます。
**omPsColorDodge5** が指定された場合はPhotoshopのバージョン5.x 以下と互換の覆い焼きカラー合成が行われます。
**omPsColorBurn** が指定された場合はPhotoshop互換の焼き込みカラー合成が行われます。
**omPsLighten** が指定された場合はPhotoshop互換の比較(明)合成が行われます。
**omPsDarken** が指定された場合はPhotoshop互換の比較(暗)合成が行われます。
**omPsDifference** が指定された場合はPhotoshop互換の差の絶対値合成が行われます。
**omPsDifference5** が指定された場合はPhotoshopのバージョン 5.x 以下と互換の差の絶対値合成が行われます。
**omPsExclusion** が指定された場合はPhotoshop互換の除外合成が行われます。
**omAdditive** が指定された場合は加算合成が行われます。
**omSubtractive** が指定された場合は減算合成が行われます。
**omMultiplicative** が指定された場合は乗算合成が行われます。
**omDodge** が指定された場合は覆い焼き合成が行われます。
**omDarken** が指定された場合は比較(暗)合成が行われます。
**omLighten** が指定された場合は比較(明)合成が行われます。
**omScreen** が指定された場合はスクリーン乗算合成が行われます。
**omAlpha** が指定された場合はアルファ合成が行われます。
**omAddAlpha** が指定された場合は加算アルファ合成が行われます。
**omOpaque** が指定された場合は src のアルファ情報は無視され、src は常に完全不透明であると見なされます。
face dfAlpha 描画方式を指定します。
**dfAlpha** が指定された場合は画像はアルファチャンネルつき画像と見なされ、描画されます。
**dfAddAlpha** が指定された場合は画像は加算アルファチャンネルつき画像として見なされ、描画されます。
**dfOpaque** が指定された場合は画像はすべて完全不透明であると見なされ、描画されます。
opa 255 演算の強度 ( 0 ~ 255 ) を指定します。
hda false アルファチャンネルを保護するかどうかを指定します。

解説

矩形演算合成

指定された演算元 Bitmap の矩形部分を演算先の Bitmap の指定位置に指定のモードで演算合成します。


operateStretch

メソッド

引数

引数 既定値 説明
dst   重ね合わせ先の Bitmap オブジェクトを指定します。
src   重ね合わせ元の Bitmap オブジェクトを指定します。
dstrect null 重ね合わせ先の矩形を ( 重ね合わせ先 Bitmap の画像位置における ) ピクセル単位で Rect オブジェクトで指定します。
未指定時全体が対象となります。
srcrect null 重ね合わせる矩形を ( 重ね合わる Bitmap の画像位置における ) ピクセル単位で Rect オブジェクトで指定します。
未指定時全体が対象となります。
cliprect null クリッピング矩形を ( 重ね合わせ先 Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時クリッピングは行われません。
mode omAuto 演算のモードを指定します。
**omPsNormal** が指定された場合はPhotoshop互換のアルファ合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsAdditive** が指定された場合はPhotoshop互換の覆い焼き(リニア)合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsSubtractive** が指定された場合はPhotoshop互換の焼き込み(リニア)合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsMultiplicative** が指定された場合はPhotoshop互換の乗算合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsScreen** が指定された場合はPhotoshop互換のスクリーン合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsOverlay** が指定された場合はPhotoshop互換のオーバーレイ合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsHardLight** が指定された場合はPhotoshop互換のハードライト合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsSoftLight** が指定された場合はPhotoshop互換のソフトライト合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsColorDodge** が指定された場合はPhotoshop互換の覆い焼きカラー合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsColorDodge5** が指定された場合はPhotoshopのバージョン5.x 以下と互換の覆い焼きカラー合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsColorBurn** が指定された場合はPhotoshop互換の焼き込みカラー合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsLighten** が指定された場合はPhotoshop互換の比較(明)合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsDarken** が指定された場合はPhotoshop互換の比較(暗)合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsDifference** が指定された場合はPhotoshop互換の差の絶対値合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsDifference5** が指定された場合はPhotoshopのバージョン 5.x 以下と互換の差の絶対値合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omPsExclusion** が指定された場合はPhotoshop互換の除外合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omAdditive** が指定された場合は加算合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omSubtractive** が指定された場合は減算合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omMultiplicative** が指定された場合は乗算合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omDodge** が指定された場合は覆い焼き合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omDarken** が指定された場合は比較(暗)合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omLighten** が指定された場合は比較(明)合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omScreen** が指定された場合はスクリーン乗算合成が行われます(1.3以降ではstNearestとstFastLinear以外で実装)。
**omAlpha** が指定された場合はアルファ合成が行われます。
**omAddAlpha** が指定された場合は加算アルファ合成が行われます。この場合は、face が dfOpaque かつ hda が偽のとき、type 引数に stFastLinear を指定することにより線形補間が可能です。
**omOpaque** が指定された場合は src のアルファ情報は無視され、src は常に完全不透明であると見なされます。この場合は、face が dfOpaque かつ hda が偽のとき、type 引数に stFastLinear を指定することにより線形補間が可能です。
face dfAlpha 描画方式を指定します。
**dfAlpha** が指定された場合は画像はアルファチャンネルつき画像と見なされ、描画されます。
**dfAddAlpha** が指定された場合は画像は加算アルファチャンネルつき画像として見なされ、描画されます。
**dfOpaque** が指定された場合は画像はすべて完全不透明であると見なされ、描画されます。
opa 255 演算の強度 ( 0 ~ 255 ) を指定します。
type stNearest 拡大縮小のタイプを指定します。
**stNearest** : 最近傍点法が用いられます
**stFastLinear** : 低精度の線形補間が用いられます(一部実装)
**stSemiFastLinear** : 固定小数線形補間が用いられます(1.3以降)
**stLinear** : 線形補間が用いられます(1.3以降実装変更)
**stFastCubic** : 固定小数3次元補間が用いられます(1.3以降)
**stCubic** : 3次元補間が用いられます(1.3以降実装変更)
**stFastLanczos2** : 固定小数Lanczos補間の範囲4x4が用いられます(1.3以降)
**stLanczos2** : Lanczos補間の範囲4x4が用いられます(1.3以降)
**stFastLanczos3** : 固定小数Lanczos補間の範囲6x6が用いられます(1.3以降)
**stLanczos3** : Lanczos補間の範囲6x6が用いられます(1.3以降)
**stFastSpline16** : 固定小数スプライン補間4x4が用いられます(1.3以降)
**stSpline16** : スプライン補間4x4が用いられます(1.3以降)
**stFastSpline36** : 固定小数スプライン補間6x6が用いられます(1.3以降)
**stSpline36** : スプライン補間6x6が用いられます(1.3以降)
**stFastAreaAvg** : 固定小数面積平均縮小が用いられます。拡大は出来ません(1.3以降)
**stAreaAvg** : 面積平均縮小が用いられます。拡大は出来ません(1.3以降)
**stFastGaussian** : 固定小数ガウス補間4x4が用いられます(1.3以降)
**stGaussian** : ガウス補間4x4が用いられます(1.3以降)
**stFastBlackmanSinc** : 固定小数Blackman-Sinc補間8x8が用いられます(1.3以降)
**stBlackmanSinc** : Blackman-Sinc補間8x8が用いられます(1.3以降)
速度は stNearest > stFastLinear > stLinear > stCubic の順に高速ですが、画質は速度が
速ければ速いタイプほど低画質になります。
stCubic 以降の補間方法は十分高画質で好みの差とも言えます。
ただし、ガウス補間についてはぼやけたような画質になります。
stFastLinear と他の線形補間(stSemiFastLinear と stLinear)の差は縮小時に大きく出ます。
stFastLinear は、常に周囲4画素を参照するのに対して、stSemiFastLinear、stLinear は、縮小時は
等倍時の影響範囲が4画素となるような範囲、つまりより広い範囲の画素を参照し補間するためより高画質です
(アルゴリズム的には本来の線形補間です)。
stFastLinear に対しては、stRefNoClip をビット論理和で追加指定することができ、この場合は、
コピーするビットマップの領域外を参照して色を合成することを許可します。これを指定しない場合は、
転送元ビットマップの周囲に余裕があったとしても、転送元ビットマップの範囲外を参照することは
ありません(範囲外の色はもっとも近い位置にある範囲内のピクセルの色と見なされます)。
hda false アルファチャンネルを保護するかどうかを指定します。
option -1.0 1.3以降で追加されました。
3次元補間時のシャープネスです。他の補間方法では現在のところ意味を持ちません。
シャープネスの値をプラス方向に大きくするとぼやけていき、マイナス方向に大きくしていくとシャープになっていきます。

解説

拡大縮小演算合成

指定された重ね合わせ元 Bitmap の矩形を、重ね合わせ先 Bitmap の矩形に演算合成します。

重ね合わせ元矩形と重ね合わせ先矩形のサイズが異なる場合は拡大または縮小が行われます。


flipLR

メソッド

引数

引数 既定値 説明
bmp   反転する Bitmap オブジェクトを指定します。
rect null 反転する領域を ( Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時全体が対象となります。

解説

左右反転

画像の左右反転を行います。


flipUD

メソッド

引数

引数 既定値 説明
bmp   反転する Bitmap オブジェクトを指定します。
rect null 反転する領域を ( Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時全体が対象となります。

解説

上下反転

画像の上下反転を行います。


adjustGamma

メソッド

引数

引数 既定値 説明
bmp   ガンマ補正する Bitmap オブジェクトを指定します。
rgamma 1.0 赤成分のガンマ値 ( 0.0 ~ 1.0 ~ 9.0 ) を指定します。
rfloor 0 赤成分の出力最低値 ( 0 ~ 255 ) を指定します。
rceil 255 赤成分の出力最大値 ( 0 ~ 255 ) を指定します。
ggamma 1.0 緑成分のガンマ値 ( 0.0 ~ 1.0 ~ 9.0 ) を指定します。
gfloor 0 緑成分の出力最低値 ( 0 ~ 255 ) を指定します。
gceil 255 緑成分の出力最大値 ( 0 ~ 255 ) を指定します。
bgamma 1.0 青成分のガンマ値 ( 0.0 ~ 1.0 ~ 9.0 ) を指定します。
bfloor 0 青成分の出力最低値 ( 0 ~ 255 ) を指定します。
bceil 255 青成分の出力最大値 ( 0 ~ 255 ) を指定します。
cliprect null クリッピング領域を ( Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時全体が対象となります。
isaddalpha false 加算合成アルファ形式かどうかを指定します。

解説

ガンマ補正

画像に対してガンマ補正を実行します。

ガンマ値には 1.0 を指定するとガンマ曲線が直線になります。

出力最低値と出力最高値は各成分の輝度の最低値と最高値を指定するものです。

最高値に最低値よりも低い値を設定すると画像を反転させることができます。

isaddalpha が true の場合、このメソッドは加算アルファ合成用の特別なガンマ補正ルーチンを用います。

このルーチンは加算アルファ合成のうち、アルファ合成に相当する成分に対してはガンマ補正を行いますが、加算合成に相当する成分に対してはガンマ補正を行いません。


doBoxBlur

メソッド

引数

引数 既定値 説明
bmp   矩形ブラーをかける Bitmap オブジェクトを指定します。
xblur 1 横方向のブラーの範囲を指定します。
yblur 1 縦方向のブラーの範囲を指定します。
cliprect null クリッピング領域を ( Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時全体が対象となります。
isalpha true アルファチャンネルを持つかどうかを指定します。

解説

矩形ブラーをかける

ブラー(ぼかし)をかけます。アルゴリズムは「矩形ブラー」(box blur)です。

矩形ブラーは、xblurとyblurの2つのパラメータによって表現される「範囲」中のピクセルの輝度の平均値をとる物です。たとえば xblur=10 yblur=2 の場合は、対象のピクセルを中心に、横方向は -10~10、縦方向は -2~2 の矩形範囲のピクセルの輝度の平均をとり、それが最終的なそのピクセルの輝度となります。

範囲の面積は (xblur×2+1) × (yblur×2+1) で計算することができます。現バージョンではこの面積が 256 未満 の場合は、面積が256以上の場合よりも高速なアルゴリズムが採用されます。

isalpha が true の場合は、アルファ合成用の特別なアルゴリズムを使用しますので、少々遅くなります。

false の場合は、より高速なアルゴリズムとなります。


doGrayScale

メソッド

引数

引数 既定値 説明
bmp   グレースケール変換する Bitmap オブジェクトを指定します。
cliprect null クリッピング領域を ( Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時全体が対象となります。

解説

グレースケール変換

画像をグレースケールに変換します。


colorRect

メソッド

引数

引数 既定値 説明
bmp   塗り潰す Bitmap オブジェクトを指定します。
value   塗りつぶす色や値を指定します。
この値は、face 引数の値によって意味が変わります。
**dfAlpha** : 0xRRGGBB 形式で色を指定してください
**dfAddAlpha** : 0xRRGGBB 形式で色を指定してください
**dfOpaque** : 0xRRGGBB 形式で色を指定してください
**dfMask** : マスク(不透明度)の値 ( 0 ~ 255 ) を指定してください
dfOpaque を指定した場合は、マスク情報は無視されます。また、dfMask を指定した場合は、色の情報はそのままになります。
dfAlpha の場合でかつ opa が負の場合はこの引数は無視されます。
opa 255 塗りつぶす不透明度 ( -255 ~ 0 ~ 255 ) を指定します。
この引数は、face の値が dfMask や dfProvince の場合は無視されます ( 常に完全不透明 )。
負の数の指定は face が dfAlpha の場合のみに有効で、
この場合は value 引数は無視され、画像から不透明度が取り除かれます (
-255 を指定すると矩形は完全に透明になります )。
rect null 塗りつぶす矩形を ( 画像位置における ) ピクセル単位で Rect オブジェクトで指定します。
未指定の場合全体が対象となります。
face dfAlpha 描画方式を指定します。
**dfAlpha** が指定された場合は画像はアルファチャンネルつき画像と見なされ、描画されます。
**dfAddAlpha** が指定された場合は画像は加算アルファチャンネルつき画像として見なされ、描画されます。
**dfOpaque** が指定された場合は画像はすべて完全不透明であると見なされ、描画されます。
cliprect null クリッピング領域を ( Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時全体が対象となります。

解説

矩形半透明塗りつぶし

指定された Bitmap 画像の矩形を指定された方法で塗りつぶします。

ImageFunction.fillRect と異なり、透明度を指定して半透明で塗りつぶすことができます。


drawText

メソッド

引数

引数 既定値 説明
bmp   文字描画する Bitmap オブジェクトを指定します。
font   描画するフォントを Font オブジェクトで指定します。
x   文字描画を開始する原点の ( 画像位置における ) x 座標をピクセル単位で指定します。
y   文字描画を開始する原点の ( 画像位置における ) y 座標をピクセル単位で指定します。
text   描画する文字を指定します。
color   描画する文字の色を 0xRRGGBB 形式で指定します。
opa 255 描画する文字の不透明度 ( -255 ~ 0 ~ 255 ) を指定します。
負の数の指定は face が dfAlpha の場合のみに有効で、
この場合は文字の形に不透明度が取り除かれる事になります ( 値が小さいほど
効果が大きくなります )。
aa true アンチエイリアスを行うかどうかを指定します。
真を指定するとアンチエイリアスが行われます。偽を指定すると行われません。
face dfAlpha 描画方式を指定します。
**dfAlpha** が指定された場合は画像はアルファチャンネルつき画像と見なされ、描画されます。
**dfAddAlpha** が指定された場合は画像は加算アルファチャンネルつき画像として見なされ、描画されます。
**dfOpaque** が指定された場合は画像はすべて完全不透明であると見なされ、描画されます。
shadowlevel 0 影の不透明度を指定します。shadowwidth 引数の値によって適切な値は変動します。
0 を指定すると影は描画されません。
shadowcolor 0x000000 影の色を 0xRRGGBB 形式で指定します。
shadowwidth 0 影の幅 ( ぼけ ) を指定します。 0 がもっともシャープ ( ぼけない ) で、値を大きく
すると影をぼかすことができます。
shadowofsx 0 影の位置の x 座標の値をピクセル単位で指定します。 0 を指定すると影は真下に描画されます。
shadowofsy 0 影の位置の y 座標の値をピクセル単位で指定します。 0 を指定すると影は真下に描画されます。
hda false アルファチャンネルを保護するかどうかを指定します。
cliprect null クリッピング領域を ( Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時全体が対象となります。

戻り値

描画領域 ( Rect オブジェクト )

解説

文字描画

Bitmap に文字を描画します。

face に dfOpaque を指定した場合、描画先のマスクが破壊されるか保護されるかは hda によります。


drawGlyph

メソッド

引数

引数 既定値 説明
bmp   文字描画する Bitmap オブジェクトを指定します。
x   文字描画を開始する原点の ( 画像位置における ) x 座標をピクセル単位で指定します。
y   文字描画を開始する原点の ( 画像位置における ) y 座標をピクセル単位で指定します。
glyph   描画するグリフを指定します。
color   描画する文字の色を 0xRRGGBB 形式で指定します。
opa 255 描画する文字の不透明度 ( -255 ~ 0 ~ 255 ) を指定します。
負の数の指定は face が dfAlpha の場合のみに有効で、
この場合は文字の形に不透明度が取り除かれる事になります ( 値が小さいほど
効果が大きくなります )。
aa true アンチエイリアスを行うかどうかを指定します。
真を指定するとアンチエイリアスが行われます。偽を指定すると行われません。
face dfAlpha 描画方式を指定します。
**dfAlpha** が指定された場合は画像はアルファチャンネルつき画像と見なされ、描画されます。
**dfAddAlpha** が指定された場合は画像は加算アルファチャンネルつき画像として見なされ、描画されます。
**dfOpaque** が指定された場合は画像はすべて完全不透明であると見なされ、描画されます。
shadowlevel 0 影の不透明度を指定します。shadowwidth 引数の値によって適切な値は変動します。
0 を指定すると影は描画されません。
shadowcolor 0x000000 影の色を 0xRRGGBB 形式で指定します。
shadowwidth 0 影の幅 ( ぼけ ) を指定します。 0 がもっともシャープ ( ぼけない ) で、値を大きく
すると影をぼかすことができます。
shadowofsx 0 影の位置の x 座標の値をピクセル単位で指定します。 0 を指定すると影は真下に描画されます。
shadowofsy 0 影の位置の y 座標の値をピクセル単位で指定します。 0 を指定すると影は真下に描画されます。
hda false アルファチャンネルを保護するかどうかを指定します。
cliprect null クリッピング領域を ( Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時全体が対象となります。

戻り値

描画領域 ( Rect オブジェクト )

解説

文字描画

Bitmap にグリフを描画します。

face に dfOpaque を指定した場合、描画先のマスクが破壊されるか保護されるかは hda によります。

グリフは、glyph : Array[9] = [ width, height, originx, originy, incx, incy, inc, bitmap(Octet), colors ] の様な形式の配列を指定します。

グリフの colors が省略された場合は、256階調であると判断されます。


fillRect

メソッド

引数

引数 既定値 説明
bmp   塗り潰す Bitmap オブジェクトを指定します。
value   塗りつぶす色や値を指定します。
この値は、isalpha の値によって意味が変わります。
**true** : 0xAARRGGBB 形式で不透明度と色を指定してください。メインとマスクの両方が塗りつぶされます。
**false** : 0xRRGGBB 形式で色を指定してください。
rect null 塗りつぶす矩形を ( 画像位置における ) ピクセル単位で Rect オブジェクトで指定します。
未指定の場合全体が対象となります。
isalpha true アルファチャンネルを持つかどうかを指定します。
cliprect null クリッピング領域を ( Bitmap の画像位置における ) Rect オブジェクトで指定します。
未指定時全体が対象となります。

解説

矩形塗りつぶし

指定された Bitmap 画像の矩形を指定された方法で塗りつぶします。


copy9Patch

メソッド

引数

引数 既定値 説明
dst Bitmap   コピー先Bitmap
src Bitmap   コピー元Bitmap

戻り値

マージン情報

解説

9 path を利用した画像コピー(マルチプラットフォーム版以降)

9 path ( slice ) を利用した画像コピーを行います。 返されるマージン情報はRectクラスのオブジェクトです。 このマージン内にテキストなど描画します。