Verwenden von OTF mit MiKTeX, XeLaTeX unter Windows

Verwenden von OTF mit MiKTeX, XeLaTeX unter Windows

Installieren Sie kostenlose Cabin Open Type-Schriftarten in Ihrem Home-Verzeichnis. Stellen Sie sich vor, diese Datei mit XeLaTeX zu kompilieren:

\documentclass{article}
\usepackage{fontspec}
\setmainfont{Cabin}

\begin{document}

{\scshape test}

\end{document}

Verwenden Sie MiKTeX unter Windows. Wenn das Paket cabininstalliert ist, werden die Kapitälchen ignoriert. Wenn es nicht installiert ist, ist das Ergebnis wie gewünscht.

Wenn dies unter Linux mit TeX Live kompiliert wird, ist das Ergebnis immer wie gewünscht, unabhängig davon, ob das Paket installiert ist oder nicht.

Das gleiche Problem besteht mit FiraSans. Irgendwelche Ideen, wie man das lösen kann?

Antwort1

Wie Ulrike Fischer in den Kommentaren vorgeschlagen hat und wie inhttps://tex.stackexchange.com/a/87906/2388, das Problem besteht darin, dass MiKTeX den Baum durchsucht texmfund zuerst die Type-1-Schriftarten verwendet. Wenn Sie die Schriftarten sowohl mit pdfTeX als auch mit XeLaTeX verwenden möchten, besteht die beste Lösung darin, MiKTeX daran zu hindern, die Type-1-Schriftarten zu verwenden. (Wenn Sie die Schriftarten jedoch nur mit XeLaTeX verwenden möchten, entfernen Sie einfach das entsprechende Paket zusammen mit den Schriftarten im texmfBaum.)

Das habe ich mit gemacht FiraSans(unter Windows 7). Ich habe die localfont2.confDatei unter gefunden C:\Documents and Settings\UserName\Application Data\MikTeX\2.9\fontconfig\configund diese Zeilen hinzugefügt (ich habe MiKTeX unter installiert C:\miktex29):

<selectfont>
<rejectfont>
<glob>C:/miktex29/fonts/type1/public/fira/*</glob>
</rejectfont>
</selectfont>

Anschließend habe ich FNDB aktualisiert und die Formate in den MiKTeX-Einstellungen aktualisiert. Danach brachte das Kompilieren des MWE (Ersetzen Cabindurch FiraSans) mit XeLaTeX das erwartete Ergebnis.

verwandte Informationen