回答:
私の知る限り、バージョン1.7以降、xorg
デフォルトは96 dpi
です。設定ファイルで指定DisplaySize
しない限り、何も計算しませんXorg
。また、xdpyinfo
出力に依存しないでください。
私のラップトップはIntel SandyBridgeで動作します。Xorg.0.log
Archlinuxの新規インストールに関する私の抜粋:
(==) intel(0): DPI set to (96, 96)
ランニング
xdpyinfo | grep -E 'dimensions|resolution'
戻り値:
dimensions: 1600x900 pixels (423x238 millimeters)
resolution: 96x96 dots per inch
これは真実とはほど遠い。私が知っている私の画面サイズであることを344x193
とても明らかミリメートルxdpyinfo
ピクセル解像度(に基づいて物理的なサイズを計算1600x900
)とデフォルト96 DPI
。追加した場合
........
DisplaySize 344 193
........
で/etc/X11/xorg.conf.d/monitor.conf
再起動すると、Xorg.0.log
正しくレポートされます:
(**) intel(0): Display dimensions: (344, 193) mm
(**) intel(0): DPI set to (118, 118)
ただし、xdpyinfo | grep -E 'dimensions|resolution'
常に次を返します:
dimensions: 1600x900 pixels (423x238 millimeters)
resolution: 96x96 dots per inch
それでも、Gnomeを使用しているため、視覚的な変更はありません。96 DPI
また、でハードコーディングされていgnome-settings-daemon
ます。後者にパッチを適用した後、ネイティブを楽しむことができます118 DPI
。しかし、xdpyinfo
それでもすべてが返されます。
dimensions: 1600x900 pixels (423x238 millimeters)
resolution: 96x96 dots per inch
XサーバーはDPIをどのように計算しますか?
XサーバーのDPIは、次の方法で決定されます。
-dpi
コマンドラインオプションは、最も高い優先度を持っています。DisplaySize
、X構成ファイルの設定を使用して、画面の解像度を考慮してDPIを導出します。DisplaySize
、DDCからのモニターサイズの値を使用して、画面の解像度に基づいてDPIが導出されます。ディスプレイにあるピクセル数はわかっているかもしれませんが、それで十分ですか?
いいえ、仮想画面のサイズ(ピクセル単位)だけでなく、(通常)物理的な表示サイズ(ミリメートル単位)も認識します。ターミナルウィンドウで次のコマンドを実行すると、ディスプレイのサイズを確認できます。
~ $ xdpyinfo | grep dimension
dimensions: 1366x768 pixels (361x203 millimeters)
Xサーバーが行う計算は次のとおりです。
次のコマンドを使用して、Xサーバーが計算したDPIを確認できます。
~ $ xdpyinfo | grep resolution
resolution: 96x96 dots per inch
よさそうですね。
さらに読むために:
xdpyinfo
からのミリメートルと加算されないこともわかりましたxrandr --query
。