노트북과 모니터 간 Ultra HD 해상도 사용 시 스케일링 문제

노트북과 모니터 간 Ultra HD 해상도 사용 시 스케일링 문제

저는 Arch Linux와 Gnome Shell을 사용하는 노트북을 가지고 있습니다. 내 그래픽 카드는 Intel HD 520입니다. 내 노트북의 화면 해상도는 3200×1800입니다. 직장에서는 해상도가 1920×1080인 모니터에 노트북을 연결합니다. 연결은 HDMI 케이블을 사용하여 수행됩니다. 시스템은 화면과 해상도를 모두 올바르게 감지합니다. 문제는 다음과 같습니다.

Ultra HD 해상도에서 Gnome(Gnome이 이 작업을 수행합니까, 아니면 그래픽 카드 드라이버입니까?)은 창을 더 크게 확장합니다. 이것은 완벽하게 이해됩니다. 그렇지 않으면 예를 들어 Firefox의 막대는 얇은 선이 됩니다. 그러나 문제는 창(예: Firefox)을 한 모니터에서 다른 모니터로 이동할 때 이 크기 조정이 유지된다는 것입니다. 결과적으로 상황이 보입니다.거대한1920×1080 모니터에서 해상도가 올바르게 감지되었음에도 불구하고.

  1. 이것은 버그인가요? 그렇다면 누구의 잘못입니까? Gnome, Intel HD 그래픽 또는 Linux 커널?
  2. 수정할 수 있나요?

답변1

  1. TLDR: 버그가 아니라 HiDPI 화면을 편안하게 사용하기 위한 이상적인 솔루션이 아닙니다.

이러한 솔루션은 대부분의 소프트웨어가 더 높은 DPI 모니터를 자동으로 보상하지 않는다는 사실에서 비롯된 것 같습니다. (스케일링이나 DPI 설정 없이) 그대로 두면 많은 프로그램이 HiDPI 화면에서 작게 보입니다. 따라서 OS 레벨에서 보상이 가능하다.Arch Linux용 HiDPI에 대한 정보), 그러나 픽셀 밀도가 다른 두 화면이 있는 경우 문제가 발생합니다.

  1. 내부 HiDPI 화면 @ 3200x1800 및 외부 @ 1920x1080을 고려하면 다음 구성이 작동해야 합니다(Dell XPS9350 및 XPS9360에서 테스트됨).

오른쪽 외부를 구성합니다.

xrandr --dpi 276 --fb 7040x3960 --output eDP-1 --mode 3200x1800 --output 
DP-1 --scale 2x2 --pos 3200x0 --panning 3840x2160+3200+0

외부를 왼쪽으로 구성합니다.

xrandr --dpi 276 --fb 7040x3960 --output DP-1 --scale 2x2 --panning
-3840x2160+3200+0 --pos 0x0 --output eDP-1 --mode 3200x1800 --pos 3840x0

많이 전환하는 경우 이러한 명령을 .bashrc에 별칭으로 넣는 것이 좋습니다. 예를 들어:

alias ext-config-right="xrandr --dpi 276 --fb 7040x3960 --output eDP-1 --mode 
3200x1800 --output DP-1 --scale 2x2 --pos 3200x0 --panning 3840x2160+3200+0"

답변2

비록 적합하지 않더라도 연결된 모든 모니터에 적용되는 울트라 HD 화면에 대한 단일 설정이 있는 것 같고 아마도 X의 설정인 것 같습니다.

그만큼아치 리눅스 위키xrandr을 사용하여 모니터 크기를 조정하는 몇 가지 옵션이 있는 섹션이 있습니다. 여기서 eDP1은 노트북 화면입니다.

xrandr --output eDP1 --auto --output HDMI1 --auto --scale 2x2 --right-of eDP1

하지만 이 두 화면이 겹치거나 두 번째로 커서가 두 화면을 모두 덮지 못하는 등 몇 가지 문제가 여전히 있을 수 있습니다.

Arch wiki에서 제안한 대로 내부 모니터의 크기가 AxB이고 외부 모니터의 크기가 CxD이고 크기 조정이 ExF인 경우 쉘 스크립트는 다음과 같은 사용자에게 연결됩니다.우벤겐s Github, 적절한 디스플레이가 제공되어야 합니다. 그것은 다음을 제공합니다:

xrandr --output eDP1 --auto --pos ${(A-C)/2}x${D} --scale 1x1 \
--output HDMI1 --auto --scale 2x2 --pos 0x0

두 번째 문제의 경우 아치는 패닝 사용을 제안합니다.

xrandr --output eDP1 --auto \
--output HDMI1 --auto --panning [C*E]x[D*F]+[A]+0 --scale [E]x[F] --right-of eDP1

마지막으로, 그 중 도움이 되었다면 우분투 위키는 xrandr 명령을 /etc/gdm/Init/Default줄 바로 앞에 저장할 수 있다고 제안합니다 initctl -q emit login-session-start DISPLAY_MANAGER=gdm. (죄송합니다. 세 번째 링크에는 담당자가 너무 낮습니다..)

관련 정보