4.14 容易な High DPI 設定 Windows 7 Only

4. 新機能や機能変更に伴う互換性問題

この章では、以下のような新機能や機能変更に伴う、互換性問題について紹介します。

High DPI とは

Hight DPI を使用すると、テキストやイメージのサイズを画面の解像度ではなく DPI で変更できるようになります。これにより、解像度を低くすることなく、テキストを大きく表示することができるようになります。また、適切な解像度でないために、テキストがぼやけてしまうといったことがなくなります。

High DPI 自体は、Windows XP 以来サポートされていましたが、Windows 7 では、次の 2 つの機能が新たに追加されました。

  • ユーザー単位で DPI 設定が可能になりました。(以前はコンピューター単位)
  • DPI を変更しても再起動が必要なくなりました。(ただし、ログオフ/ログオンは必要)

このように、より容易に High DPI の設定ができるようになったため、使用するユーザーが増える可能性があります。それに伴い、これまで発覚しなかった問題が顕在化する可能性があります。

図 4-50: DPI 設定画面 (コントロールパネル)

図 4-50: DPI 設定画面 (コントロールパネル)

ページのトップへ


発生する互換性問題

High DPI を想定していないアプリケーションでは、次に示すような視覚的な問題が生じることがあります。

  • ボタンがスクリーンからはみ出してしまう
  • ドラッグアンドドロップができなくなる
  • 字が重なってしまう
  • 適切でないフォント・サイズで表示されてしまう

図 4-51: High DPI により発生する問題

図 4-51: High DPI により発生する問題

ページのトップへ


問題の回避と対応

DPI の設定が 150% 以上に設定した場合に問題が発生するなら、互換性タブを利用することができます。互換性タブには、図 4-52 のように、「高 DPI 設定では画面のスケーリングを無効にする」というチェックボックスがあります。これを有効にすることで、問題を回避できるアプリケーションもあります。

図 4-52: 高 DPI 設定では画面のスケーリングを無効にするオプション

図 4-52: 高 DPI 設定では画面のスケーリングを無効にするオプション

これは、DPI 150% 以上で使用されるスケーリング技術が Windows Vista から変更されたからです。このチェックを有効にすると、新しいスケーリングを無効にすることができるため、以前と同じように表示できるアプリケーションもあります。

また、アプリケーションを DPI 対応にするには、次の手順に従います。

  1. DPI 対応評価を実行し、検出されたすべての問題を記録します。
  2. 個々の問題を DPI のコーディングに関する一般的な問題と照らしてチェックします。
  3. アプリケーションを完全に DPI 対応化するためのコストを評価します。
  4. 必要な High DPI アセット (ボタン、アイコンなど) の一覧を作成します。
  5. 1 で見つかった DPI の問題を解消します。
  6. 4 で把握した新しいアセットを統合します。
  7. アプリケーションを DPI 対応として宣言します。
  8. DPI 対応評価を再度実行し、問題が解決されていることを確認します。

なお、High DPI 対応アプリケーションの開発に関しては、以下の Web サイト (英語) を参考にしてください。

ページのトップへ