Windows 디스플레이 설정을 프로그래밍 방식으로 결정
Windows 7 이상에서는 사용자가 제어판에서 텍스트 크기와 같은 디스플레이 매개변수를 조정할 수 있습니다. 이러한 설정에 액세스하면 사용자 기본 설정에 따라 애플리케이션 기능을 활성화하거나 비활성화하는 데 유용합니다.
이 디스플레이 설정을 프로그래밍 방식으로 검색할 수 있나요?
graphics.DpiX
및 DeviceCap.LOGPIXELSX
속성 모두 확대/축소 수준에 관계없이 Surface Pro 장치에서 일관된 값 96을 반환하는 것으로 나타났습니다. 스케일링 계수를 정확하게 계산하려면 다른 접근 방식이 필요합니다.
gdi32.dll
의 GetDeviceCaps
기능을 활용하는 것이 효과적인 방법입니다. 논리적이고 물리적인 화면 높이를 측정하여 화면 크기 조정 요소를 결정할 수 있습니다.
<code class="language-csharp">[DllImport("gdi32.dll")] static extern int GetDeviceCaps(IntPtr hdc, int nIndex); public enum DeviceCap { VERTRES = 10, DESKTOPVERTRES = 117, } private float getScalingFactor() { using Graphics g = Graphics.FromHwnd(IntPtr.Zero); IntPtr desktop = g.GetHdc(); int LogicalScreenHeight = GetDeviceCaps(desktop, (int)DeviceCap.VERTRES); int PhysicalScreenHeight = GetDeviceCaps(desktop, (int)DeviceCap.DESKTOPVERTRES); g.ReleaseHdc(desktop); float ScreenScalingFactor = (float)PhysicalScreenHeight / (float)LogicalScreenHeight; return ScreenScalingFactor; }</code>
이 함수를 호출하면 화면 크기 조정 요소를 정확하게 얻을 수 있으므로 이에 따라 애플리케이션 동작을 조정할 수 있습니다.
위 내용은 Windows 디스플레이 크기 조정 설정을 프로그래밍 방식으로 검색하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!