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

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

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

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

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

답변1

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

이러한 솔루션은 대부분의 소프트웨어가 더 높은 DPI 모니터를 자동으로 보상하지 않는다는 사실에서 비롯된 것 같습니다. 크기 조정이나 DPI 설정 없이 그대로 두면 HiDPI 화면에서 많은 프로그램이 작게 보입니다. 따라서 운영 체제 수준에서 보상을 수행할 수 있습니다(참조: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

UHD 화면에는 연결된 모든 모니터에 적용되는 단일 설정이 있는 것 같지만 이는 적절하지 않을 수도 있고 X의 설정일 수도 있습니다.

이것아치 리눅스 위키xrandr을 사용하여 디스플레이 크기를 조정하는 몇 가지 옵션이 포함된 섹션이 있습니다. 여기서 eDP1은 노트북 화면입니다.

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

분명히 여전히 몇 가지 문제가 있습니다. 두 화면이 겹치거나 커서가 두 화면을 모두 덮지 못할 수 있습니다.

내부 디스플레이의 크기가 AxB이고 외부 디스플레이의 크기가 CxD이며 크기 조정이 ExF(Arch wiki에서 제안한 대로)인 경우 쉘 스크립트는 다음과 같은 파일에 연결됩니다.벤겐Github에서는 디스플레이에 적절한 디스플레이를 제공해야 합니다. 그것은 다음을 제공합니다:

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

두 번째 질문에 대해 Arch는 번역 사용을 권장합니다.

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. (죄송합니다. 세 번째 링크의 대표성이 너무 낮습니다..)

관련 정보