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 cabin
installiert 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 texmf
und 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 texmf
Baum.)
Das habe ich mit gemacht FiraSans
(unter Windows 7). Ich habe die localfont2.conf
Datei unter gefunden C:\Documents and Settings\UserName\Application Data\MikTeX\2.9\fontconfig\config
und 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 Cabin
durch FiraSans
) mit XeLaTeX das erwartete Ergebnis.