Firefoxで表示できるのにIE6で表示できないjpeg画像

jpeg画像には、CMYKモードとRGBモードの2種類が存在するようです。
CMYKモードのjpeg画像はIE6で表示できないようです。
(webでのスタンダードはRGBですが、印刷系はCMYKなのかもしれません)

ユーザの画像投稿などでCMYKモードのjpeg画像が投稿された場合、IE6で表示できなくなってしまうので、phpのGDライブラリで以下のような処理を行います。

        list($width, $height, $type, $attr) = getimagesize($imagefile);
        $source = imagecreatefromjpeg($imagefile);
        $thumb = imagecreatetruecolor($t_width, $t_height);
        imagecopyresampled($thumb, $source, 0, 0, 0, 0, $t_width, $t_height, $width, $height);
        imagejpeg($thumb, $distfile);
        imagedestroy($thumb);

       $imagefile: オリジナルの画像ファイルパス
       $distfile: 変換後の画像ファイルパス
       $t_width, $t_height: 変換後の画像横/縦ピクセル(リサイズしなければwidth,heightと同値) 

GDライブラリはかなり便利です。

カテゴリー: 技術関連 パーマリンク