いろいろ調べて各 OS ごとの特徴つかんだので、それでいけるんじゃないかな、って思ってます。
HighDPI | PMDPI | Color Management | |
---|---|---|---|
Win ~8 | o | x | o |
Win 8.1 | o | o | o |
OS X | o | o | o |
iOS | o | ? | o |
Android | o | ? | x |
Linux | x | x | x |
まず、Windows 8 以前の Per-monitor DPI は OS がサポートしてないので無理です。iOS や Android はそもそもマルチスクリーンの扱いがいまいちわかってません。
次に、Android の色管理ですが、API サポートがないのでそもそも無理です。
最後に Linux ですが、xlib がそもそもいろいろとサポートしてないのでつらいです。独自対応はすべてできますが、実装コストが高いので後回しになるでしょう。
今回は画面表示周りについていろいろ調べてました。ちなみにスケーリングは 100% とかいう表記で行う予定です。なぜなら、
- Windows: 96 - 100%, 120 - 125%, 144 - 150%, 192 - 200%, 240 - 250%
- OS X: 72 - 100%, 144 - 200%
- Android: 120 - 75%, 160 - 100%, 213 - 133%, 240 - 150%, 320 - 200%, 480 - 300%, 560 - 350%, 640 - 400%
ということになっているからですww ええ、基準がばらっばらなんですよね。で、このままやるといろいろ死んじゃう感あるので、そういう率で表現します。
また、Android や Windows, iOS はテキストサイズのスケーリングがあるので、これも加味するので、おそらくスクリーンスケーリングとテキストスケーリングの 2 つのパラメーターができる予定です。
ということで、画面周りのメモはこんな感じです。プラットフォーム依存コードが多いところですね…w 頑張ります……
以上。