PDF フォントが DejaVu Sans にフォールバックするため、等幅フォントへの置き換えが必要

PDF フォントが DejaVu Sans にフォールバックするため、等幅フォントへの置き換えが必要

コード フラグメントとそれが参照する PDF がありますCourier Std(これは私のシステムでは利用できず、購入する予定もありません)。問題は、Evince Document Viewer(3.18.2) ではこのフォントが に置き換えられDejaVu Sans、これはフォントではないためmonospace、等幅フォントで設定されていないコードは読みにくいことです (独特のカーニング調整により、さらに読みにくくなります)。

msttcorefonts役に立つかもしれないと思ってインストールしましたが、役に立ちませんでした。DejaVu Sans を等幅フォントに置き換えるにはどうしたらよいでしょうか?

ここに画像の説明を入力してください

更新: PDF を Firefox で読み込むと、フォントが等幅フォントに正しく置き換えられます。

答え1

この問題はパッチを当てたUbuntuの次のバージョン(21.04)で。アップストリームのfontconfigマージリクエストもあります#128保留中。


その間、次の手順は PDF フォントの置換に関するいくつかの問題の解決に役立ちます。

  • インストールfonts-urw-base35

  • ~/.config/fontconfig/conf.d/10-pdf-aliases.conf次の内容のファイルを作成します。

    <?xml version="1.0"?>
    <!DOCTYPE fontconfig SYSTEM "/etc/fonts/conf.d/fonts.dtd">
    <fontconfig>
    
    <alias binding="same">
      <family>CourierStd</family>
      <accept>
      <family>Courier</family>
      </accept>
    </alias>
    
    <alias>
      <family>CourierStd</family>
      <default><family>monospace</family></default>
    </alias>
    
    </fontconfig>
    

    その後実行しますfc-cache(必要ない場合もあります)。

    必要に応じて、ファイルに他のフォント エイリアスを追加できます。

参照:

関連情報