PNG対応版について。

PNG対応版は、条件に応じてGIF画像の代りにPNG画像を出力します。

PNG画像が出力される条件。

以下の場合にGIF画像の代りにPNG画像を出力します。

ソフトバンク及びGIF画像非対応のEZウェブ端末でアクセスしている場合。

これらのブラウザはGIF画像を取扱えませんので、代りにPNG画像を配信します。

サーヴァがCompress::Zlibを実装していて、且つPNG対応ブラウザでアクセスしている場合。

サーヴァがCompress::Zlibを実装しているなら、GIF画像よりもPNG画像の方が高速に出力出来ます。

ブラウザがPNG対応かどうかの判断。

ソフトバンク端末はユーザエージェントで判断されます。

その他のPC向けブラウザの場合、アクセス時のリクエストヘッダ内のACCEPTフィールドに「image/png」が含まれていれば、PNG画像対応と判断されます。

一方、インターネットエクスプローラはリクエストヘッダ内のACCEPTフィールドに「image/png」を含めないため、このままではインターネットエクスプローラは常にPNG画像非対応と見做されてしまいます。

このため、インターネットエクスプローラ5.0以降である事をユーザエージェント文字列から判断出来た場合も、PNG画像対応と判断します。

尚、インターネットエクスプローラのコンポーネントを利用しているブラウザ(ドーナツやルナスペース等)には、ユーザエージェント文字列に独自のものを用いるものがあり、その場合PNG非対応と誤認される事があります。

PNG対応版かGIF専用版か?

一応、以下の基準で撰んで頂ければ良いでしょう。

ソフトバンクを含む携帯端末向けに利用する場合。
この場合は必ずPNG対応版にしなければなりません。
携帯端末向けに利用するが、ソフトバンクには対応しない場合。
この場合はPNG対応版にするよりも、スクリプトが少ないGIF専用版の方が良いでしょう。
PC専用で、サーヴァがCompress::Zlibを実装している事が明らかである場合。

この場合はPNG対応版の方が良いでしょう。

但し、サーヴァの空き容量などの理由でスクリプトの本数が増えるのが気になる方はGIF専用版でも構いません。

PC専用で、サーヴァがCompress::Zlibを実装していない事が明らかである場合。
PC専用の自作CGIに組込んで配布したい場合。
この場合はPNG対応版よりも、スクリプトの本数が少ないGIF専用版の方が良いでしょう。

スクリプトの内容。

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

putcatbmp.pl
スクリプトの本体で、以下の四つのスクリプトを呼出しております。
BMPcat.pl
ビットマップ画像を連結してそのデータを返すスクリプトです。
putGIF.pl
GIF画像を生成して出力するスクリプトです。
putPNG.pl
PNG画像を生成して出力するスクリプトです。サーヴァがCompress::Zlibをサポートしていない場合は以下のスクリプトを利用します。
Deflate.pl

サーヴァがCompress::Zlibをサポートしていない場合に代用するスクリプトです。


ページ外へのご案内。