1

このパラメーターをどこでも確認できるかどうかは誰にもわかりませんか?

4

2 に答える 2

2

これを読むGraphics.DpiXとわかります。

100 を掛けGraphics.DpiXて 96 で割ると、パーセンテージのフォント スケーリングが得られます。これは、100% のフォント スケーリングが 96 dpi に相当するためです。

アプリケーションがDPI 対応としてマークされていない場合、ユーザーがフォント スケーリングを 150% に設定すると、DpiXプロパティは 96 を報告することに注意してください。標準の WinForms アプリが DPI 対応としてマークされているかどうかはわかりません。

于 2011-09-07T07:10:15.287 に答える
0

C# を使用していない場合は、Windows 7 でこれを機能させるために 2 つの手順を実行する必要があります。

まず、アプリケーションを DPI 対応にします。 このブログでは、その方法を説明しています。これには、アプリケーション マニフェストの変更、またはSetProcessDPIAware()関数の呼び出し (存在する場合と存在しない場合があります) のいずれかが含まれます。

次に、この MSDN 記事で説明されているように、それぞれGetDeviceCaps(hdc, LOGPIXELSX)およびを使用して X/Y DPI 値を取得します。GetDeviceCaps(hdc, LOGPIXELSY)

以前は DPI に対応していなかったアプリケーションがありますが、テキスト スケーリング (Windows 7 の [ディスプレイ] コントロール パネルで利用可能) を使用すると壊れてしまい、Windows 8 以降には影響しませんでした。

于 2016-03-03T21:13:32.403 に答える