C# 애플리케이션에서 Windows 디스플레이 설정에 액세스
Windows 7 이상 버전에서는 사용자 정의 가능한 디스플레이 설정을 제공하여 사용자가 텍스트 크기와 기타 시각적 측면을 조정할 수 있습니다. 이러한 설정에 액세스하는 것은 많은 애플리케이션이 적절한 기능을 보장하는 데 매우 중요합니다.
C#에서 Windows 디스플레이 크기 조정 검색
C#에서는 디스플레이 설정에 액세스할 수 있지만 graphics.DpiX
및 DeviceCap.LOGPIXELSX
에만 의존하면 모든 수준에서 정확한 배율 인수를 제공하지 못할 수 있습니다.
보다 정확한 스케일링 팩터 계산
정확한 배율 인수를 결정하려면 다음 방법을 사용하세요.
gdi32.dll
라이브러리를 가져옵니다.
장치 기능에 대한 열거를 정의합니다(DeviceCap
).
배율 인수를 계산하는 방법을 구현합니다.
GetDeviceCaps
을 사용하여 논리적 및 물리적 화면 높이를 픽셀 단위로 검색합니다.코드 예:
<code class="language-csharp">using System; using System.Drawing; using System.Runtime.InteropServices; public class DisplayScaler { [DllImport("gdi32.dll")] static extern int GetDeviceCaps(IntPtr hdc, int nIndex); public enum DeviceCap { VERTRES = 10, DESKTOPVERTRES = 117 } public float GetScalingFactor() { using (Graphics g = Graphics.FromHwnd(IntPtr.Zero)) { IntPtr desktop = g.GetHdc(); int logicalHeight = GetDeviceCaps(desktop, (int)DeviceCap.VERTRES); int physicalHeight = GetDeviceCaps(desktop, (int)DeviceCap.DESKTOPVERTRES); g.ReleaseHdc(desktop); return (float)physicalHeight / logicalHeight; } } }</code>
이 접근 방식을 사용하면 C# 애플리케이션이 Windows 디스플레이 배율 인수를 정확하게 검색하여 사용자 디스플레이 설정에 따라 조정할 수 있습니다.
위 내용은 C# 애플리케이션은 어떻게 Windows 디스플레이 배율 인수를 정확하게 검색할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!