Xrandr

如何在英特爾 GPU 上設置外部顯示器的縮放模式

  • August 5, 2015

我可以設置筆記型電腦內部面板的顯示縮放模式:

xrandr --output LVDS1 --set "scaling mode" "Full aspect" 但是,這不適用於外部顯示器(DP1、VGA1、DP1),因為不支持縮放模式屬性:

$> xrandr --output HDMI1 --set "scaling mode" "Full aspect"
X Error of failed request:  BadName (named color or font does not exist)
 Major opcode of failed request:  140 (RANDR)
 Minor opcode of failed request:  11 (RRQueryOutputProperty)
 Serial number of failed request:  47
 Current serial number in output stream:  47

顯示較低解析度內容時如何保持縱橫比?

縮放模式屬性尚未在英特爾驅動程序中實現(請參閱此處)。它在專有的 AMD 和 NVIDIA 驅動程序中實現,並且最近在開源 radeon 驅動程序(這裡)中實現。

但是,您可以通過使用 xrandr 手動執行縮放來解決此限制:

假設您的螢幕具有 1920x1080 的原始解析度,並且您希望顯示未拉伸的 1024x768 解析度。縱橫比的比例為 16/9 到 4/3。所以 1.333333 為 1。

xrandr --output HDMI1 --mode 1024x768 --scale 1.33333333x1 --panning 1024x768

這使螢幕具有正確的解析度和正確的縱橫比。但它不是居中的。為了實現這一點,我們需要使用轉換選項將其(大致)放在螢幕的中心(1024*1.3333333 - 1024 = 342 / 2 = 171):

xrandr --output HDMI1 --mode 1024x768 --panning 1024x768 --transform 1.33333333,0,-171,0,1,0,0,0,1

不幸的是,未使用的螢幕背景是灰色和/或亂碼而不是黑色。

引用自:https://unix.stackexchange.com/questions/220387