D3モジュールのアイコンの作り方

Date 2006-07-14 16:12:41 | Category: XOOPS

in englishin japanese
来る7/29 XTC2006 でaltsysモジュールについて話をする予定でいるのですが、その前にやっておかなければならないことがあります。それは、altsys対応かつD3モジュールの「最初の大物」である、Bulletin 2.0 を使い倒すことです!

私自身、さっさとpicoあたりをリリースし、画像モジュール、カレンダーモジュール、XML取得表示モジュールなどを軒並み、D3としてフルスクラッチする予定でいたのですが、妙に仕事が忙しくなってしまって、何も出来ませんでした。(以上、カコ悪い言い訳おわり)

しかし、suinさんは、その不完全なD3仕様をベースに、完成されたD3を見せてくれました。素直に脱帽します!

というわけで、これから使っていくつもりなのですが、インストール前に気になった重箱の隅で1記事稼がせていただきます。(まだ、minahitoさんに負けた事実を認めないってか?)

D3モジュールでは、モジュールアイコンを動的に生成します。基本的には、XOOPS_TRUST_PATH内に置かれたmodule_icon.pngをGDで読み込んで、dirnameを描きこむだけなのですが、そのPNGファイルは、インデックスカラーである必要があります。それも、64色とか256色みたいなキリの良い数字を使うと、64番目、256番目のカラーが、文字描画色(黒)に置き換わってしまい、見た目におかしくなります。

また、GD1の処理ですから、フルカラーPNGを読み込むと、やはりおかしく表示されます(Bulletin2.02はこのパターン)。

おすすめは、63色のインデックスカラーとして画像保存することです。こうすれば、文字描画色として用意されたカラーは、64色目におさまるため、画像に影響を与えることはありません。(もっとカラーが多く必要なら、127色や255色をお勧めします)

対象者の極めて限定されるTipsではありますが、こんなテクニックでも覚えおいて損はないかもしれません。

63色インデックスカラー版のmodule_icon.png
(実際に、xoops_trust_path/modules/bulletin/ 内の画像と入れ替えてみれば、すぐに意味が判ると思います)





You can read more news at PEAK XOOPS.
http://xoops.peak.ne.jp

The URL for this story is:
http://xoops.peak.ne.jp/md/news/index.php?page=article&storyid=137