画像連結出力スクリプトについて。

アクセスカウンタなどに最適な、画像連結スクリプトです。

具体的にはビットマップ画像を横方向に連結して、その結果をGIF画像に変換して出力すると言うものです。

スクリプトの内容。

現在、以下の三つのスクリプトがセットされております。

putcatbmp.pl
スクリプトの本体で、以下の二つのスクリプトを呼出しております。
BMPcat.pl
ビットマップ画像を連結してそのデータを返すスクリプトです。
putGIF.pl
GIF画像を生成して出力するスクリプトです。

gifcat.pl」との違い。

これまで、画像連結スクリプトとしては「gifcat.pl」が有名でした。

gifcat.pl」はアニメーションGIFの原理を利用して一本のGIF画像ファイルに複数のGIF画像を封入すると言うものです。

実行する際に一切の圧縮・展開を行わないため、以下のようなメリットがあります。

LZW圧縮アルゴリズムの特許権に一切抵触しない。

圧縮したり、圧縮を解いたりするソフトウェアの開発には、特許権者の許諾が必要でした。

しかしながら、圧縮された画像データを一切いじる事無く処理が可能な「gifcat.pl」では特許権に抵触しないため、ライセンス無しで利用する事が出来ました。

実行速度が速い。

圧縮を解いて連結して、更に圧縮するとなるとそれだけでかなり面倒になります。

当然処理に時間も掛かってサーヴァの負荷に直結するでしょう。

gifcat.pl」は単純にブロックを並べ替えるだけなので、処理時間もそれほど掛からない筈です。

一方、以下のようなデメリットもあります。

アニメーションGIFの再現に不具合があるブラウザでは正しく表示出来ない。

具体的にはネットスケープ 6及びもじらの旧めのヴァージョンで、不具合が生じました。

制作者もアクセスカウンタに利用していたところ、Bトロン超漢字もじらで全く表示出来ないと言うご報告も頂きました。

オペラなどで、表示が遅い。

gifcat.pl」で連結した画像をオペラで見た場合、左端からパタパタと表示されていくのが分かります。

また、スクロールさせてブラウザのクライアント領域から一旦外して再度スクロールで当該画像が見られるようにしたときにもやはり左端からパタパタと表示されていきます。

オペラは画像処理はかなり遅いようで、このような問題が生じるようです。

一方、制作者が開発した画像連結出力スクリプトでは、アニメーションの機能を用いていないので、オペラでもパッと表示されますし、もじらでも問題が起こる事は無いでしょう。

唯一問題になるのは処理速度ですが、その問題を少しでも軽くするため、敢えてGIF画像ではなくビットマップ画像を連結させると言う方式を導入しました。


ページ外へのご案内。