PDF-Schriftart greift auf DejaVu Sans zurück, benötigt einen Monospace-Ersatz

PDF-Schriftart greift auf DejaVu Sans zurück, benötigt einen Monospace-Ersatz

Ich habe eine PDF-Datei mit Codefragmenten und Referenzen Courier Std(die auf meinem System nicht verfügbar ist und die ich auch nicht kaufen möchte). Das Problem ist, dass Evince Document Viewerdiese Schriftart in (3.18.2) durch ersetzt wird DejaVu Sans, was keine monospaceSchriftart ist, und Code, der nicht in einer Monospace-Schriftart gesetzt ist, ist einfach schwer zu lesen. (Die eigenwillige Kerning-Anpassung macht es nur noch schwieriger.)

Ich habe es in der Hoffnung installiert msttcorefonts, dass es helfen könnte, aber es hilft nicht. Wie kann ich DejaVu Sans durch eine Monospace-Schriftart ersetzen?

Bildbeschreibung hier eingeben

UPDATE: Wenn ich das PDF in Firefox lade, wird die Schriftart korrekt durch eine Monospace-Schriftart ersetzt.

Antwort1

Dieses Problem solltegepatchtin der nächsten Version von Ubuntu (21.04). Es gibt auch eine Upstream-Fontconfig-Merge-Anforderung#128ausstehend.


In der Zwischenzeit sollten die folgenden Schritte dabei helfen, einige Probleme bei der PDF-Schriftartenersetzung zu beheben:

  • Installieren fonts-urw-base35.

  • Erstellen Sie die Datei ~/.config/fontconfig/conf.d/10-pdf-aliases.confmit folgendem Inhalt:

    <?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>
    

    Dann ausführen fc-cache(ist möglicherweise nicht erforderlich).

    Sie können der Datei nach Bedarf weitere Schriftart-Aliase hinzufügen.

Siehe auch:

verwandte Informationen