Simply mini J

1日5分、その日の自分を振り返る時間を作りなさい。
    昔そんな話をお坊さんから聞いた。

どうせなら上を狙いたい

, …
By
All Photo by inos

diary5562

数日前にWordpress 4.1がリリースされ、新し物好きの私としては一昨日それにアップデートしたわけですが、一部具合の悪い現象が起きていまして対策を検討中です。(Wordpressとは当ブログに使用しているブログアプリケーションです)

一言でまとめると「ブログに貼りつけた写真の画質が悪い」という事です。勿論これには条件があり、このエントリーに使用している最大サイズ(記事のテキスト幅と同等)の写真を、AppleのRetinaディスプレイから閲覧した時のみ発生します。

私の場合はこのブログの記事に貼り付ける写真は主に3種類に限定しており、長辺が「大800px」、「中400px」、「小265px」に設定しているのですが、問題は横幅ではなく高さに関するものです。

写真の縦横比はフィルムからの名残で私は全て3:2を使用していますから、オリジナル素材のサイズが何であれ横幅を800pxにリサイズした場合の縦解像度は533.3333pxと割り切れず、多くのアプリケーションが(Photoshop等)四捨五入して533pxにFitさせます。これまではWordpressも同様でした。しかし今回のバージョンよりそれが四捨五入ではなく繰り上げになり、横幅を800pxに指定した場合の縦解像度は534pxになったのです。

この1pxが私には非常に大きな問題です!ここからが少々ややこしい話になります。

一般的にはこの1pxは記事に貼りつける写真の縦がわずかに長くなるだけの話なのですが、当ブログはAppleのRetinaディスプレイに対応すべく、実際に記事に挿入される画像の4倍サイズの画像をサーバーにアップロードしています。Retinaディスプレイでアクセスした場合に限りこの4倍サイズの画像が記事の枠に縮小されて表示されるため綺麗に見えるというカラクリです。

ただしRetina以外のディスプレイからアクセスした方に4倍の画像を表示させようとすると無駄に大きなファイルにアクセスすることになり動作が緩慢になりますので、相手の機器を判断して標準サイズの画像を表示させるか4倍サイズの画像を表示させるか切り替えているのです。

そうなるとサーバーには800px、400px、265pxの3種類のサイズの画像の他にそれぞれ4倍サイズの画像が必要となり、1枚の写真に対して合計6枚のファイルを準備しなければなりません。勿論手作業で作るのは面倒なのでWordpressプラグインに自動生成させます。

さてここで問題になるのが先ほどの800px×534pxというサイズ。

これまでは縦533pxでしたので撮影時の写真をそのままPhotoshopで1600×1067にリサイズし、サーバーにアップすればそれがRetina用素材として使えました。ところが今回から縦が534px!。という事はオリジナル写真をリサイズする場合に縦が1068px必要になります。つまりそこで1px足りないばっかりにRetinaディスプレイには4倍サイズの画像が表示できないという判断となり、標準サイズの画像が代替えで表示され画質が著しく低下するのです。

これに対する一番簡単な解決策はPhotoshopで縦を1068pxにリサイズした画像の自動計算された横幅1602pxの横2pxをカットしてむりくり1600×1068という画像を作ればよいのですが、なんだかちょっと面白くない!(2pxカットは必須ではないですが気持ちよくない)

これまでより手間を掛けるのに画質現状維持ですからね。Photoshopの処理はバッチを組んでしまえばボタン一つで自動処理できますから手間ではないのですが...。

今検討しているのは更なる高解像度画像をサーバーにアップする事。理想を言えば今使用している1600×1067の更に4倍の3200×2133をマスターとしてアップするようにすれば800×534の画像生成でエラーにはなりませんし、拡大表示の際の画質も今より向上します。ただこの方法ですとWordpressでアップ出来る最大ファイルサイズの2MBという容量制限に引っかかる場合が出てくるという事。今度は圧縮比を工夫しなければなりませんね。

今月いっぱいテストを行い、来年から新方式に切り替え予定。

コメントを残す

*
*
* (公開されません)