web-dev-qa-db-ja.com

XmingでWSLGUIアプリがぼやけたフォントでレンダリングされるのはなぜですか?

XmingとWSLを使用してGUIプログラムを実行しようとすると、Firefoxのように、グレースケールのアンチエイリアシングを備えたフォントが表示されます。

Screenshot

これは、私が試したすべてのディストリビューション(ArchとUbuntu)で発生し、目をそらしたくなりますが、私の人生では、それを修正する方法がわかりません。

注:DPIが高い画面の場合、画像がぼやけます。F12キーを押してこのJavascriptを実行できます。スケールダウンするコード:document.body.style.zoom = 1 / window.devicePixelRatio。)

この問題の原因は何ですか? Xmingに問題がありますか、それともディストリビューションに問題がありますか? XmingのWebサイトにあるすべてのアドバイスに従おうとしましたが、役に立ちませんでした。

3
user541686

(VSCodeにも対応するように更新)

someプログラムの場合、解決策はこれを~/.config/fontconfig/fonts.confに追加することです。

<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <match target="font">
    <edit name="antialias" mode="assign"><bool>true</bool></edit>
    <edit name="hinting" mode="assign"><bool>true</bool></edit>
    <edit name="hintstyle" mode="assign"><const>hintfull</const></edit>   <!-- try hintmedium if it looks bad -->
    <edit name="lcdfilter" mode="assign"><const>lcddefault</const></edit>
    <edit name="rgba" mode="assign"><const>rgb</const></edit>             <!-- set to match your display -->
  </match>
</fontconfig>

これらのプログラムの場合、これを実行すると、ここで行ったように、すてきでスムーズなレンダリングが得られるはずです。

Screenshoot

ただし、Visual Studio Code(Electronを使用)などの他のプログラムの場合は、freetype2-cleartypeもインストールする必要があります。 Archのマニュアル 説明 のように、問題の最初の原因はサブピクセルレンダリングを妨げるマイクロソフトの特許であり、これを修正するために、freetype2-cleartypeをAURから手動または経由でインストールできます。次の(noteここでは署名チェックをスキップして機能させる):

yaourt --m-arg "--skippgpcheck" -S --needed freetype2-cleartype

yaourtがない場合は、 コンパイルしてインストール from そのAURリポジトリ にします。そうすると、GPGエラーが発生します。通常のSudo pacman-key --refresh-keysが機能しない場合は、説明されているようにSudo pacman-key --populateを実行する必要があります ここ

4
user541686