XRandR DPI trên linux đa đầu


18

Tôi có nhiều màn hình với các cài đặt DPI chính xác khác nhau. Tôi có thể sử dụng xrandr --dpi Xđể thay đổi DPI cho tất cả các màn hình, có thể đặt DPI khác nhau cho từng màn hình không? Làm cách nào để tôi tạo các ứng dụng tính toán lại kích thước phông chữ khi chúng được chuyển sang một màn hình khác? xrandr --dpi XChỉ ảnh hưởng đến cửa sổ mới, cửa sổ cũ vẫn sử dụng giá trị DPI cũ.

Câu trả lời:


3

Tôi chưa thử nó, nhưng có một câu trả lời dễ nhìn ở đây gợi ý sử dụng xrandrtùy chọn scale sẽ mang lại cho bạn hiệu quả mà bạn đang theo đuổi.

CẬP NHẬT: Điều này không hoạt động, tôi đã viết hướng dẫn tóm tắt ở đây .


3
Xin vui lòng, luôn luôn sao chép-dán hướng dẫn để trả lời. Đó là biện pháp phòng ngừa mất thông tin của các câu hỏi lịch sử. Sớm hay muộn, hầu hết các liên kết bên ngoài đều CHẾT, và điều đó sẽ khiến câu trả lời của bạn trở nên vô nghĩa ... Dù sao, hầu hết người dùng đều muốn xem câu trả lời trên một trang web, ...
kravemir

Ngay cả khi trang web đó là một trang web StackExchange khác?
Jamie Kitson

Lệnh scale có vẻ rất chuyên sâu về GPU khi so sánh với thiết lập nhiều màn hình trên Windows 10. Scale có nghĩa là thu nhỏ các pixel trực tiếp trong khi Windows 10 thay đổi kích thước văn bản.
Kun

3

Tôi đã có thể giải quyết vấn đề này (với các vấn đề) bằng cách sử dụng các chi tiết được nêu trong cuộc thảo luận github sau: https://github.com/linuxmint/Cinnamon/issues/3606

Màn hình ngoài QHD (2560X1440), Màn hình trong / Máy tính xách tay 3200x1800

xrandr --output eDP-1 --scale 1x1 --pos 0x2880
xrandr --output DP-1 --mode 2560x1440 --scale 2x2 --fb 5120x4680

HOẶC Màn hình ngoài FHD (1920x1080), Màn hình trong / Máy tính xách tay 3200x1800

xrandr --output eDP-1 --scale 1x1 --pos 0x2160
xrandr --output DP-1 --mode 1920x1080 --scale 2x2 --fb 3840x3960

Những thứ này hoạt động, nhưng có một lượng đáng kể để xé màn hình độ phân giải cao (máy tính xách tay) khi tôi di chuyển các cửa sổ, thay đổi kích thước màn hình hoặc cuộn trên trình duyệt. Điều này cảm thấy giống như một giải pháp rending phần mềm (có tất cả những vấn đề này bị rách, và làm mới chậm).

Năm 2017, Linux / Gnome cần giải quyết giải pháp chia tỷ lệ đa màn hình. Cả Windows 10 và OS X đều giải quyết vấn đề này mà không cần phải dùng đến các bản sửa lỗi hỗ trợ băng tần dòng hoạt động một phần (vấn đề xé rách không được chấp nhận khi chơi game)


2

bạn có thể đặt các giá trị khác nhau cho mỗi màn hình bằng:

xrandr --output <Display1> --dpi X --output <Display2> --dpi Y

Để xrandrnắm bắt những gì có sẵn , chỉ cần khởi động lại phông chữ. Tôi nghĩ bạn có thể tắt màn hình và bật lại bằng:

xrandr --output <Display1> --off
xrandr --output <Display1> --auto

nhưng tôi không chắc lắm


2
Theo như tôi có thể thấy '--dpi' không phải là cài đặt trên mỗi đầu ra. Nó dẫn đến một cuộc gọi đến XRRSetScreenSize cho toàn bộ màn hình. Theo như tôi có thể thấy X11 đơn giản là không hỗ trợ cài đặt các giá trị DPI khác nhau cho các đầu ra khác nhau. Cái nào sẽ hút ...
Arnout Engelen

2
À, thực ra các đầu ra RandR có chiều rộng / chiều cao được chỉ định bằng cả pixel và milimet, vì vậy các đầu ra khác nhau có thể có DPI khác nhau - nhưng AFAICS không có lệnh gọi RandR để thao tác kích thước vật lý của đầu ra.
Arnout Engelen

5
Nhiều nguồn khác nhau bao gồm wiki.archlinux.org/index.php/HiDPI#External_displays đề xuất rằng chỉ có thể cài đặt DPI duy nhất một lần (trong một ví dụ Xserver). Lệnh xrandr được đề xuất bởi Agomezl không hoạt động.
Vladimír Čunát
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.