投稿者: 管理人
投稿日時: 99/12/06 01:49:51
管理人です。
> さて、PNGの扱いについて質問致します。
> 実は現在、自分のサイトで扱っている画像をGIFからPNGへと移行しようと考えています。ユニシス社が怖くて……という訳でもないのですが、D-Pixedを始め多くのフリーウェアのお絵描きソフトが、特許問題を抱えるGIFから撤退してしまったので。
そうですねぇ。確かに。Compuserveも絡んでいますし・・・GIFの圧縮等にはややこしい特許問題が付きまとっているのは事実です。それを解決すべくW3Cで決まった新画像フォーマットがPNGですが・・・悲しいかなほとんど使われていないのが事実です。せめてブラウザが完全対応してくれていればいいんですが、IE4等のメジャーブラウザが対応していないので・・・事実上使いにくいですね。
参考
http://www.printx.com/tips/webtech_09.html
ちなみに、なんかで読んだのですが、加工したり、変換したり、圧縮したりするソフト(adobeとか、Painterとか)を作る業者以外の場合は特に問題にならないと聞いたことがあります。従ってimgboardの場合はGIFを利用しても問題ないと解釈しています。
> imgboardでもPNGを扱えないものだろうか……と思っています。imgboardの現在の仕様では、PNGをアップロードは受けつけているけれど、画像直接埋込では表示できない、という仕様になっていたはずですが……。
これは仕様です。当然埋め込み表示をさせるのは簡単なのですが・・・ほとんと普及していないので、あえて利便性を高めないようにしています。同じ考えからBMPもあえて埋め込み表示していません。BMPの場合の理由は、非圧縮の画像形式であるBMPをなまじ扱えるようにすると、JPEGなら1/20のサイズで十分なデータなのに、BMPでアップロードするようなWindows初心者がかなり出て、結果として掲示板運営者が迷惑するであろうと思ったからです。ユーザが多いので、まあこんな風にしておいた方が無難かな・・・という程度の判断なのですが・・・
個人でPNGを埋め込みたい場合は、下の3個所を直してください。
ただ、リサイズ機能は効きません。
# テキストリンク用HTML指定部に代入する$data_typeを選択
if($tmp_img_location=~ /\.gif$|\.jpe?g$/i){
ここを
if($tmp_img_location=~ /\.gif$|\.jpe?g$|\.png/i){
あと sub check_modeの
# ユーザがクッキーで表示モードを以前選択している場合,それを優先
if(($COOKIE{'view_mode'} ne "")&&($COOKIE{'view_mode'} ne "as_cgi_defined")&&($user_selected_view_mode==1)){
if(($tmp_img_location!~ /\.dat$/)&&($tmp_img_location=~ /\.gif$|\.jpe?g$/i)){
$disp_mode="img_icon" if($COOKIE{'view_mode'} eq "text_img_type1");
# 以前選択してない場合,初期設定の通り
}else{
if(($show_img_on_board ==0)||($tmp_img_location=~ /\.dat$/)||($tmp_img_location!~ /\.gif$|\.jpe?g$/i)){
# テキストリンク
$disp_mode="img_text_link";
の部分の/\.gif$|\.jpe?g$/を同じく/\.gif$|\.jpe?g|\.png$/としてください。