UIスケーラビリティ
以下の記事は、Tizen SDK Dev Guide にあるUI Scalability の日本語訳です。
その他のドキュメントの日本語訳はTIZEN 2.0 SDK Dev Guide 日本語訳 目次をご覧ください。
UIスケーラビリティ
UIスケーラビリティにより、ひとつのTizen Webアプリケーションで複数の画面解像度をサポートすることができます。Tizenプラットフォームは実行時に、アプリケーションの論理的な解像度で定義されたサイズと位置の値を物理的な解像度に自動的に変換します。TizenのWeb UIフレームワークはデバイスの画面にWebページに収まるようにW3Cviewport
メタタグを使用し、TizenのWeb UIウィジェットのサイズを決定するためにrem
単位を使用します。
viewportの設定
Tizenデバイスは様々な画面解像度とdots per inch (DPI)
をサポートします。viewport
メタタグが定義されていない場合、Tizen UIフレームワークは、デフォルトのviewport
の幅とスケール係数を使用します。これにより、Webコンテンツのレイアウトが異なる画面解像度との間で変化することを保証します。
次の例では、viewport
の幅がdevice-width
(デバイスの幅により確定)に設定されています。device-width
の値は、同様の仮想DPI値を設定し、同じような物理的なサイズのすべてのデバイスでウィジェットを表示するために取得されます。 (viewport
の値が定義されていない場合、TizenのWeb UIフレームワークはこの例にある値をデフォルトで使用します。)
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0">
viewport
幅がdevice-width
に設定されている場合、幅とスケール係数の値はDPIによってWebブラウザによって計算されます。
Tizenデバイスに基づき、あらかじめ定義されたデバイスDPI値が選択されます。
low-dpi medium-dpi high-dpi extrahigh-dpi 120 160 240 320 device pixel ratio (DPR)
は次の式により計算されます。DPR = device-DPI / medium-DPI
viewport
の幅は次の式により計算されます。Viewport width = (Real device width) / DPR
スケール係数は次の式により計算されます。
Scale factor = (Given scale value) * DPR
デフォルトのスケール値は1.0です。
次の図は、異なるTizenデバイスのデバイスDPI値を示しています。
図:デバイスDPIの値
次の表は、viewport
幅がdevice-width
に設定された異なるデバイス上で、TizenのWebサイト(http://tizen.org)の異なるレイアウトのサイズとスケール係数を示しています。
<meta name="viewport" content="width=device-width, initial-scale=1">
Device screen resolution | Real screen DPI | Device DPI | Web browser page | Viewport width | Scale factor |
---|---|---|---|---|---|
720 x 1280 | 306 | 320 | 360 px | 2.0 | |
480 x 800 | 218 | 240 | 320 px | 1.5 |
Tizen Web Winsets との連携
Tizen Web winsets(ポップアップ、タブバー、ColorPickerなど)のデフォルトサイズは、参照viewport
のDPIの値が160に基づいて設計されています。したがって、viewport
の幅がdevice-width
に設定されていれば、これらのwinsetsはどのTizenデバイスでも同様のサイズになります。
アプリケーションのviewport
の幅を手動で固定値に設定すると、Tizen Web winsetsはアプリケーションで適切にフィットしない場合があります。この問題を回避するためにTizen Web winsetsはrem
単位を使用します。rem
単位はwinsetのベースフォントサイズに依存します。それぞれのTizen Web winsetは独自のベースフォントサイズを持ち、<html>
要素のフォントサイズもそのベースフォントサイズに設定されます。viewport
の幅が固定値に設定された場合は、このベースフォントサイズは再計算されてTizen Web winsetのサイズに正確に調整するように<html>
要素のフォントサイズが設定されます。
次に読むドキュメント
日本語訳: yasuyk
This content is licensed under Creative Commons Attribution 3.0. For details, see the Content License.