MacBook Pro Retinaディスプレイ 13インチの液晶パネルの画素数は「2,560×1,600ピクセル」ですが、環境設定の「ディスプレイ」から解像度を変更できます。標準解像度である「Retina(1,280×800ピクセル)」以外の、1,680×1,050ピクセル、1,440×900ピクセル、1,024×640ピクセルを選択すると、スケールング表示されます。
標準解像度も含めたすべての解像度に変更し、JavaScriptで
windowオブジェクトのdevicePixelRatioプロパティ(window.devicePixelRatio)を調べてみたところ、その値はいずれの場合も「2」でした。ちなみに、CSSのメディアクエリ「-webkit-device-pixel-ratio」でも同様でした。![]()  | 
| ▲疑似解像度: 1,024×640ピクセル | 
![]()  | 
| ▲標準 | 
![]()  | 
| ▲疑似解像度: 1,440×900ピクセル | 
![]()  | 
| ▲疑似解像度: 1,680×1,050ピクセル | 
ディスプレイの解像度に合わせて、
devicePixelRatioの値も変わると思っていたので、意外な結果です。で、OS Xのプレビューでスクリーンショットを開き、インスペクタを表示して画像の情報を確認してみると、イメージサイズが設定したディスプレイ解像度の2倍(総画素数では4倍)になっていました。
ということは、設定したディスプレイ解像度(例えば1,680×1,050)を、そのままパネルの解像度(2,560×1,600)にスケーリングするのではなくて、設定解像度のRetina表示(例えば3,360×2,100)にしてからパネル解像度にスケールングしているということでしょうか。
確かに、拡大しているならばディザーが目立つはずですが、ディザーは気になりません。標準解像度よりも小さい「1,024×640ピクセル」は、拡大表示しているはずですが、それでもほとんど気になりません。
ディスプレイ解像度の設定画面にも注意が表示されますが、標準よりも大きな解像度に設定すると、パフォーマンスにも影響がありそうなので、標準のままで使うのが無難なようです。





0 件のコメント:
コメントを投稿