ビットマップ

Topへ

述語名/引数  (eg:LoadBitmap *file *bitmap)
要約 ファイルからビットマップをロードします。
互換性 Win
解説 ルールが成功すると*bitmapにビットマップオブジェクトが返ります。ビットマップオブジェクトは、プリミティブオブジェクトと同様に自動的にガベージコレクトされます。

 


述語名/引数  (eg:LoadSprite *file *r *g *b *sprite)
要約 ファイルからスプライトをロードします。
互換性 Win
引数 *file [in] ビットマップファイル
*r [in] 赤
*g [in] 緑
*b [in] 青
*sprite [out] スプライトオブジェクト
成功/失敗 スプライトの生成に成功し*spriteに関するマッチングに成功した。
解説 スプライトオブジェクトは、透過色をもつビットマップです。*r、*g、*bで透過させる色を指定します。

 


述語名/引数  (eg:ShowSprite *x *y *sprite)
要約 スプライトを表示します。
互換性 Win
引数 *x [in] X座標
*y [in] Y座標
*sprite [in] スプライトオブジェクト
解説 透過色を考慮してスプライトを表示します。

 


述語名/引数  (eg:StrechSprite *x *y *w *h *sprite)
要約 スプライト拡大又は縮小して表示します。
互換性 Win
引数 *x [in] X座標
*y [in] Y座標
*w [in] 表示する幅
*h [in] 表示する高さ
*sprite [in] スプライトオブジェクト
解説 透過色を考慮してスプライトを表示します。*wと*hがオリジナルのサイズと異なるときは拡大縮小されます。

 


述語名/引数  (eg:BitBlt *x *y *bitmap)
 (eg:BitBltOr *x *y *bitmap)
 (eg:BitBltAnd *x *y *bitmap)
要約 ビットマップを描画します。
互換性 Win
解説 *x *y ビットマップを描画するクライアント座標です。
*bitmap ビットマップオブジェクトです。

Or、Andのサフィックスがついたバージョンはそれぞれ該当する演算を背景とビットマッブに施した結果を描画します。

 


述語名/引数  (eg:StretchBlt *x *y *w *h *bitmap)
 (eg:StretchBltOr *x *y *w *h *bitmap)
 (eg:StretchBltAnd *x *y *w *h *bitmap)
要約 ビットマップを拡大または縮小して描画します。
互換性 Win
解説 *x *y ビットマップを描画するクライアント座標です。
*w *h 実際に描画する幅と高さです。
*bitmap ビットマップオブジェクトです。

Or、Andのサフィックスがついたバージョンはそれぞれ該当する演算を背景とビットマッブに施した結果を描画します。

例:

(as (test) :(loadModule "eggraph.dll" *2)(test2))
(as (test2):(eg:CreateWindow 10 20 640 480 "ビットマップのサンプル")
(eg:LoadBitmap "e1.bmp" *e1)
(eg:LoadBitmap "e2.bmp" *e2)
(eg:BitBlt 10 10 *e1)(eg:TextOut 100 10 "元の画像")
(eg:BitBlt 10 100 *e2)(eg:TextOut 100 100 "マスク")
(eg:BitBltAnd 10 200 *e2)(eg:BitBltOr 10 200 *e1)(eg:TextOut 100 200 "透過処理")
(eg:StretchBltAnd 10 300 128 128 *e2)(eg:StretchBltOr 10 300 128 128 *e1)(eg:TextOut 180 300 "ストレッチ")
(eg:Update)
(loop))
(as (loop):(eg:GetMessage ?)(loop))

結果: