フレーム作成dll

一つの画像を加工して、同じデザインで違う大きさのフレームを作るDLLです。
http://www.eiji8pou.net/download/frame20100128.zip


この画像を読み込んで、「枠」の存在を考慮してから拡大縮小して、

このように加工します。
一つのフレームから自由な大きさのフレームを複数作成できますので、統一感のある画面デザインが可能になります。
また、作成された画像を外部に出力するオプション機能も持っています。

使い方

1.元になる画像を任意のスプライトに読み込んでおきます。

lsph 100,":c;frame.bmp",0,0 ; 非表示にしておくのがよいでしょう。

2.出力先になるスプライトを作成しておきます。

lsp 50,":c;>640,160,#FFFFFF",0,320 ; テキストウィンドウに使うつもりなので、この大きさ。

※最初のファイルはダミーでいいので、動的生成の塗りつぶしファイルにするのがよいでしょう。大きさの指定も簡単です。
3.exec_dllで、dllを呼び出します。

exec_dll "frame.dll/50,100,6,6,0,0"

frame_dllに与えるパラメータは以下のようになっています。

  1. 出力先になるスプライトの番号
  2. 元になるスプライトの番号
  3. 元画像の「枠」の横幅をドット数で。例の画像の場合は「6」
  4. 元画像の「枠」の縦幅をドット数で。例の画像の場合は「6」
  5. 横方向モード。引き伸ばしか繰り返しか。0なら、引き伸ばす。1ならタイルパターン。
  6. 縦方向モード。引き伸ばしか繰り返しか。0なら、引き伸ばす。1ならタイルパターン。
  7. 保存ファイル名。ここに文字列を与えれば、その文字列をファイル名として、作成されたbmpの保存を試みます。

このようになっています。上記サンプルは、上記フレーム画像を作成した時のパラメータです。

注意点

元スプライトと出力先スプライトのセル数やアルファブレンドか否かは一致させておいてください。もしそうでなければ、どのような結果になるかは保証されません。

用途

二つの用途が考えられます。
保存機能を利用した開発段階での労力削減手段としてです。一つのフレームデザインができれば、他のフレームを作成するのは簡単です。
もう一つは、ユーザー環境で動的なフレーム生成手段として使う方法です。ユーザーがデザインを指定できるような機能に最適かも知れません。
※ただし、セーブ機能とのすりあわせはやっていませんので、どのような影響があるかは未知数です。