その3

element表示(原案?)

  • 画像の読込

Bitmapオブジェクトへ、パスを指定してインスタンスを作成する

Bitmap BMP = new Bitmap(@パス);

  • 透明色マスク

surface(surface id).png は座標 (0,0) (左上) の色が透過色としてマスクされる。

とのことなので
Bitmapオブジェクトの座標 (0,0)の色を取得
取得した色をMakeTransparentによって、透明色として指定

BMP.MakeTransparent( BMP.GetPixel(0,0) );

  • 画像の合成

ベースとなるBitmapオブジェクトを
GraphicsオブジェクトのFromImageで読み込み
そのGraphicsオブジェクトへ重ねる画像をDrawImage描画する

Bitmap BMPBase = new Bitmap(@ベース画像パス);
Bitmap BMPOverlay = new Bitmap(@重ね合わせ画像パス);

Graphics g = Graphics.FromImage(BMPBase);
g.DrawImage(BMPOverlay , -500, 0);

  • 実装案

Bitmap BMPBase = new Bitmap(@ベース画像パス);
BMPBase.MakeTransparent( BMPBase.GetPixel(0,0) );
Graphics g = Graphics.FromImage(BMPBase);

以下繰り返し(繰り返し時に画像パス、オフセット取得)
Bitmap BMPOverlay = new Bitmap(@重ね合わせ画像パス);
BMPOverlay.MakeTransparent( BMPOverlay.GetPixel(0,0) );
g.DrawImage(BMPOverlay , オフセットX, オフセットY);

・・・多少曖昧だが、まあ、だいたいこんな感じだろう