通過 VGA 介面連線顯示器時解析度不正確
我的一臺 PC 機通過 VGA 介面連線一臺微軟之星 23.8 英寸顯示器,該顯示器的解析度為 1920x1080。 在 Arch Linux 中通過“設定 → 顯示”選擇解析度時,發現最大隻有 1024x768。 (以前使用 Lenovo 膝上型電腦通過 HDMI 介面連線這臺顯示器, 同樣在 Arch Linux 中,可以正確選擇到 1920x1080 的解析度)
上網查詢一下,通過以下方法解決了該問題。
xrandr 是一款官方的 RandR (Resize and Rotate) X Window System 擴充套件配置工具。 它可以設定螢幕顯示的大小、方向、映象等。 當沒有新增任何選項直接執行時,xrandr 列出該系統可用的顯示輸出裝置 (VGA-1, HDMI-1 等等) 和每一臺裝置可設定的解析度,當前解析度後面帶有一個*號和一個+號:
~$ xrandr
Screen 0: minimum 8 x 8, current 1024 x 768, maximum 32767 x 32767
VGA1 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1024x768 60.00*
800x600 60.32 56.25
848x480 60.00
640x480 59.94
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
由於出錯的硬體或驅動,xrandr 可能並不能檢測出您的顯示器所有的有效解析度。 不過,我們可以在 xrandr 裡新增所需要的解析度。 首先,執行 cvt 查詢某解析度的有效掃描頻率:
~$ cvt 1920 1080
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
然後通過--newmode 引數新建一種 xrandr 模式, 輸入上面所得到的查詢結果,其中 Modeline 關鍵詞自然需要被省略。
~$ xrandr --newmode "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
新建模式後,我們需要把這模式新增到當前的輸出裝置(這裡是 VGA1)上。 由於一些引數已經事先設定,只需輸入模式名稱即可,即 "1920x1080_60.00"。
~$ xrandr --addmode VGA1 "1920x1080_60.00"
最後,再把 VGA1 的解析度指定為剛剛新增的新模式:
~$ xrandr --output VGA1 --mode "1920x1080_60.00"
再次使用 xrandr 檢查一下:
~$ xrandr
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
VGA1 connected primary 1920x1080+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1920x1080 59.96 +
1024x768 60.00
800x600 60.32 56.25
848x480 60.00
640x480 59.94
1920x1080_60.00 59.96*
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
注意,以上設定只能在當前會話暫時生效。
在 /etc/X11/xorg.conf.d/ 中設定解析度, 使 xrandr 所更改的解析度設定永久生效:
$ sudo vim /etc/X11/xorg.conf.d/10-monitor.conf
Section "Monitor"
Identifier "VGA1"
Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync
Option "PreferredMode" "1920x1080_60.00"
EndSection
Section "Screen"
Identifier "Screen0"
Monitor "VGA1"
DefaultDepth 24
SubSection "Display"
Modes "1920x1080_60.00"
EndSubSection
EndSection
Section "Device"
Identifier "Device0"
Driver "intel"
EndSection
參考資料
相關文章
- 關於Spyder在高解析度顯示器下的選單圖示顯示不正確問題
- 電腦顯示器介面哪個好?顯示器VGA/DVI/HDMI/DP介面的區別對比
- c++ 獲取顯示器的連線埠型別(VGA,HDMI,DVI等等)C++型別
- RxJava 異常時堆疊顯示不正確?解決方法都在這裡RxJava
- 解決生產庫date欄位顯示不正確
- 碰見一個BLOCKING_SESSION顯示不正確的BUGBloCSession
- Ubuntu下android手機通過usb連線電腦,顯示"???????????? no permissions"問題UbuntuAndroid
- QT介面顯示實時時間QT
- 瀏覽器模擬顯示器不同解析度瀏覽器
- 【新產品釋出】iM_VGA 真彩顯示VGA模組!(含視訊教程)
- eclipse中的漢字橫著顯示,或顯示不正確,字型大小顏色設定Eclipse
- 串列埠通訊gui介面顯示串列埠GUI
- linux檢視資料夾大小,ls-l顯示不正確Linux
- ASP:Menu 在IE8中顯示不正確的解決方法
- [BUG反饋]LINUX下圖示、圖片及驗證碼顯示不正確Linux
- 通過vnc連線linux伺服器VNCLinux伺服器
- javascript如何獲取顯示器的解析度JavaScript
- 繫結域名時域名解析狀態顯示解析失敗或不正確的解決方法
- Oracle 表連線 篩選欄位執行計劃不正確Oracle
- 21.5寸顯示器多大長寬多少 21.5寸顯示器最佳解析度多少
- Win10系統連線公共WiFi時不顯示登入介面怎麼解決Win10WiFi
- mysql 通過IP連線MySql
- FPGA影像採集與顯示專案(一)帶LOGO的VGA顯示模組FPGAGo
- js和cookie取得顯示器解析度程式碼JSCookie
- tiff不正常顯示問題
- Qt:通過QLabel控制元件來顯示實時日期時間QT控制元件
- 【IDL】同時顯示不同解析度影像的方法
- 電腦連線使用代理ip顯示超時怎麼辦
- oracle通過透明閘道器連線mysql的配置OracleMySql
- ORACLE通過透明閘道器連線DB2OracleDB2
- Laravel 通過 ODBC 連線 VerticaLaravel
- 通過跳板機連線MySQLMySql
- C#中改變顯示器的解析度 (轉)C#
- 虛擬機器之間能夠ping通,但是建立tcp連線時卻顯示Failed in connect to TCP server: No route to host虛擬機TCPAIServer
- Springboo3 Knife4j引數解析顯示不正確問題Spring
- percona server 日誌時間不正確Server
- 禁止ssh連線時的確認提示
- MFC通過button控制編輯框是否顯示系統時間