Windows 설정 "앱 크기 조정 수정" - 어떤 역할을 합니까?

Windows 설정 "앱 크기 조정 수정" - 어떤 역할을 합니까?

Windows 10 설정(버전 1809 기준)에는 다음과 같은 토글 스위치가 있는 "앱 크기 조정 수정"(설정 -> 디스플레이 -> 고급 크기 조정 설정 아래) 설정이 있습니다.

Windows에서 앱이 흐려지지 않도록 수정하도록 허용

이로 인해 Windows 및 Windows 앱이 높은 DPI 디스플레이를 처리하는 방식이 변경된다는 점을 이해합니다. 그런데 정확히 어떤 역할을 합니까?

이 스위치를 전환하여 오작동하는 앱을 고칠 수 있었지만 이 설정이 정확히 무엇을 하는지 이해하고 이로 인해 발생할 수 있는 문제를 인식하고 싶습니다.

답변1

tl;dr:설정 컨트롤GDI 스케일링, 프로그램의 디스플레이 크기를 조정하는 특정 기술입니다.

Windows의 기능을 이해하려면 운영 체제가 그래픽 디스플레이를 처리하는 방법을 이해해야 합니다.

그래픽 프로그램은 가상 표면에 모양, 텍스트, 이미지로 구성된 그래픽을 그립니다. 표시할 시간이 되면 OS는 이 가상 표면을 디스플레이나 프린터 등의 대상 장치로 변환합니다. 이렇게 하면 프로그램이 디스플레이 매체를 알고 이에 적응할 필요가 없습니다. 이 부분은 OS와 해당 드라이버에 의해 처리되기 때문입니다.

최신 고해상도 및 높은 DPI 모니터에서는 일부 프로그램의 디스플레이가 사용자에게 너무 작아서 크기 조정이 필요할 수 있다는 문제가 발생했습니다. Microsoft는 이를 위해 DPI 인식 그래픽용 API를 만들었으므로 프로그램의 디스플레이가 자동으로 조정되지만 실제로 이 인터페이스를 사용하는 프로그램은 소수에 불과합니다.

DPI를 인식하지 않는 프로그램(대부분)의 경우 Microsoft는 디스플레이 크기를 확대하는 자동 메커니즘을 만들었습니다. Windows Vista에 이미 존재하는 이러한 종류의 첫 번째 메커니즘은 이미지 크기 조정 알고리즘을 기반으로 했습니다. 즉, Windows는 프로그램이 그린 화면을 확대하여 사실상 그려진 픽셀 하나를 둘 이상으로 변환했습니다. 결과는 이미지를 확대하는 것과 같습니다. 이미지는 더 커지지만 품질이 떨어지고 흐릿하게 나타납니다.

이 문제를 해결하기 위한 Microsoft의 두 번째이자 최신 시도(Windows 10 V1703에 도입됨)는 프로그램이 가상 표면에 그림을 그리는 동안 그래픽 작업(GDI)을 가로채는 것입니다. 마이크로소프트는 이를 다음과 같이 지칭한다.GDI 스케일링- 보다Windows에서 높은 DPI 데스크톱 애플리케이션 개발. 예를 들어, 프로그램은 해당 글꼴을 사용하여 12포인트에 텍스트를 쓸 수 있습니다. 그러나 대상이 150% 확대된 화면인 경우 Windows는 대신 18포인트로 설정된 글꼴을 사용하므로 완벽하게 읽을 수 있는 결과를 제공합니다. 다른 드로잉 호출도 비슷하게 차단됩니다.

이 방법은 침입적이며 경우에 따라 프로그램에 실패/방해할 수 있습니다(예:높은 DPI 장치에 대한 Windows 크기 조정 문제), 이것이 바로 Windows에서 이를 사용하려면 사용자의 허가가 필요한 이유입니다. 권한은 시스템 전체(요청한 "앱 크기 조정 수정" 설정) 또는 실행 파일의 속성(탭 "호환성"/"높은 DPI 설정 변경" 탭)을 통해 각 프로그램에 부여될 수 있습니다.

답변2

Windows 10에서는 그림을 그리는 소프트웨어와 앱을 "확대/축소"할 수 있습니다.GDI(운영 체제의 모든 부분 포함), 모든 벡터 요소를 원하는 비율로 확장합니다.

예를 들어, 150% 배율을 설정하면 600x400px 창 크기가 900x600px로 조정됩니다. 크기가 조정된 창의 32x32px 아이콘은 48x48px로 크기가 조정됩니다. 위쪽에서 8px, 왼쪽에서 16px 버튼은 위쪽에서 12px, 왼쪽에서 24px 이동하고 12포인트 글꼴은 18포인트로 그려집니다. 200% 배율을 설정하면 원래 매개변수가 두 배가 됩니다.

이렇게 하면 모든 요소의 상대적인 크기와 위치가 유지되어 항목을 더 쉽게 읽고 클릭하거나 터치할 수 있으므로 크기 조정 설정을 사용자 정의하는 것은 여러 가지 방법으로 유용할 수 있습니다. 1) 높은 DPI 화면에서 시스템과 애플리케이션을 더 읽기 쉽게 만듭니다. 2 ) 시력이 좋지 않은 사람들을 위해 항목 크기 조정을 허용합니다. 3) 터치가 마우스로 클릭하는 것보다 덜 정확하고 클릭 가능한 항목 사이에 더 많은 공간이 필요하므로 시스템을 더 터치하기 쉽게 만듭니다.

이 스케일링 메커니즘("GDI 스케일링"이라고 함)은 실제로 소프트웨어/앱의 GDI 출력을 화면에 다시 그리며 Vista에서 다시 도입되었습니다. 높은 DPI와 터치 스크린이 점점 보편화되면서 지난 10년 동안 주목을 받고 있습니다. 그래픽 출력이 비트맵 이미지로 처리되고 그에 따라 크기가 조정되어 크기가 조정된 응용 프로그램이 흐릿하게 보이고 기본 DPI 인식 렌더링과 명확하게 구별되는 XP로 거슬러 올라가는 이전 크기 조정 방법을 보완합니다. 이것이 바로 새로운 메커니즘이 용어로 참조되는 이유입니다. "Windows에서 앱이 흐려지지 않도록 수정하도록 하세요."

불행하게도 GDI 크기 조정은 비트맵 그래픽에 도움이 되지 않으므로 비트맵으로 크기가 조정됩니다. 이전 예에서는 32x32px 아이콘이 48x48px이 되지만 어쨌든 업스케일된 낮은 해상도의 32x32px 비트맵으로 채워집니다.

더 나쁜 것은 개발자가 원래 화면의 출력 크기를 조정하기 위해 GDI를 수정하는 시스템에 의해 깨진 가정에 의존한 경우 일부 소프트웨어가 예측할 수 없는 다양한 방식으로 오작동할 수 있으므로 크기 조정 설정을 변경할 때 엄지손가락 역할을 하는 이전 소프트웨어는 신중해야 합니다. 테스트되었습니다. 따라서 GDI 크기 조정은 "앱 크기 조정 수정" 설정을 통해 제어할 수 있습니다.

답변3

최근에이 문제가 발생했습니다. 위의 솔루션에 추가하면 랩톱에서 크기 조정이 활성화되고 보조 모니터에서 "크기 조정되지 않은" 응용 프로그램을 실행하려는 시나리오를 수정하는 데 도움이 됩니다.

이 예에서 노트북은 고해상도 화면이고 크기가 13인치에 불과하므로 더 작은 글꼴을 읽으려면 크기 조정이 필요하지만 USB-C 연결을 통해 24인치 표준 HD인 여러 모니터가 연결되어 있으며 크기 조정 요소를 적용할 필요가 없습니다. 스케일링 기능을 사용하고 애플리케이션별 호환성 -> 높은 DPI 설정 변경 기능을 설정하면 일반적으로 대형 모니터에서 실행하는 애플리케이션에서 스케일링을 제거하고 노트북에서 사용하는 애플리케이션은 기능적으로 유지할 수 있습니다. 하지만 내 시나리오에서는 도움이 됩니다.

관련 정보