画面ごとに異なる fontconfig 設定を行う方法はありますか?
1080p モニターを 2 台持っていますが、1 台は 13 インチで、もう 1 台は 27 インチです。小さいモニターではアンチエイリアス フォントを使用し、大きいモニターではアンチエイリアス フォントを使用しないフォントを使用したいと思います。
答え1
xrdb
C プリプロセッサを使用するので (当然ですが)、条件をサポートします。以下は私の からの抜粋です.Xresources
:
#if SCREEN_NUM == 0
Xft.dpi: 157
#endif
#if SCREEN_NUM == 1
Xft.dpi: 96
Xft.antialias: 0
#endif
これで、xrdb -merge
各モニターで が適切な処理を実行し、ログインすると、無数の X 初期化スクリプトの 1 つが を確認すると仮定すると.Xresources
、 も正しく設定されます。
(注:Arch Linux フォント設定このページにはさらに多くの例がありますが、後世のためにこれを保存しておくために、関連する例を上に含めました。
答え2
やり方は次のとおりです:
- セカンダリモニターの設定を行い
.Xresources
、実行します。xrdb
- プログラムを起動し、セカンダリモニターに配置します
- 値を元に戻し
.Xresources
て実行しますxrdb
傾斜したセカンダリモニターで Intellij Idea を起動するためのスクリプトの例を次に示します。
#!/bin/sh
sed -i 's/.*Xft.rgba:\s*rgb.*/Xft.rgba: vrgb/' /home/babken/.Xresources
xrdb /home/babken/.Xresources
intellij-idea-ultimate-edition &
sed -i 's/.*Xft.rgba:\s*vrgb.*/Xft.rgba: rgb/' /home/babken/.Xresources
xrdb /home/babken/.Xresources
ただし、そのプログラムをそのモニターのみに保持する場合は、これが機能します (私のように)。