【レビュー】

画像をiPhoneやiPad向けに最適化する方法

    後藤大地  [2010/08/13]

    Thomas Fuchs, author of the script.aculo.us user interface JavaScript library, a member of the Prototype core team and a Ruby on Rails core alumnus.

    Webサイトを構築する際に悩むことのひとつに、画像フォーマットに何を採用するか、というものがある。だいたい候補はJPEG、GIF、PNG8、PNG24といったところになる。以前、Jennifer Farley氏がこれまでのスキルをまとめたところでは、次の指針で選択すればいいことになる。

    • 写真データに使うならJPEG
    • ロゴやフラットカラーなイメージに使うならGIFかPNG8
    • 影効果や炎のような効果を使う画像ではPNG24

    JPEGに関してはさらに、ベースラインを使うべきかプログレッシブにするべきかという判断も求められる。この判断についてはStoyan Stefanov氏がまとめた次の指針がわかりやすい。

    • JPEG画像のサイズが10KB未満である場合、ベースライン(通常のJPEG画像)として保存して使った方がいい。約75%の確率でより小さいファイルサイズになると期待できる。
    • 10KB以上である場合にはプログレッシブの方がいい。約94%の確率でより小さいファイルサイズになると期待できる。
    • 数バイトでもファイルサイズを小さくしたい場合はすべてのJPEGについてベースラインとプログレッシブを生成してファイルサイズを比較した方がいい。

    ただし、JPEGでプログレッシブを採用するかどうかは次の点も考慮する必要がある。

    • プログレッシブJPEGはユーザから古臭い技術だと判断される可能性がある。
    • プログレッシブ画像でもプログレッシブにレンダリングしないブラウザもある。

    これに、さらに新しいルールが追加されることになりそうだ。Optimizing images for hardware-acceleration on the iPhone and iPadでThomas Fuchs氏が伝えているところによれば、iPadやiPhoneでは、H/Wアクセラレーションを有効にしたCSSトランスフォームで大きなサイズのプログレッシブJPEGイメージを使っていると、パフォーマンス上の問題を引き起こすことがあるという。そういった場合はベースラインへ変換した方がいいとし、プログレッシブからベースラインへ変換するための次のコマンドを紹介している。変換に使われているツールはImageMagick。

    convert target.jpg -interlace none target-baseline.jpg
    

    Thomas Fuchs氏は、H/Wアクセラレーションを使わないのであればJPEGはプログレッシブにしておいた方がいいだろうとも指摘している。この手のテクニックは、新しく登場するブラウザやブラウザのアップデート、新しいデバイスの登場などの影響を受けて随時変っていく傾向がある。

    関連記事

    関連サイト

    関連したタグ

    新着記事

    特設サイトの情報

      求人情報

      人気記事

      一覧

      イチオシ記事

      新着記事

      特別企画

      転職ノウハウ

      あなたの仕事適性診断

      4つの診断で、自分の適性を見つめなおそう!

      Heroes File ~挑戦者たち~

      働くこと・挑戦し続けることへの思いを綴ったインタビュー

      はじめての転職診断

      あなたにピッタリのアドバイスを読むことができます。

      転職Q&A

      転職に必要な情報が収集できます

      スカウト転職する

      企業からアプローチのメッセージが届きます。

      マイナビニュースマガジン