Die Schriftart Times New Roman auf meinem Mac unterstützt keine Kapitälchen. Daher möchte ich TeX Gyre Termes als Ersatzschriftart für Kapitälchen festlegen.
Verwendung von TeX Gyre Termes als Hauptschriftart
\documentclass{article}
\usepackage{fontspec}
\setmainfont{texgyretermes}%
[
Extension = .otf,
UprightFont = *-regular,
BoldFont = *-bold,
ItalicFont = *-italic,
BoldItalicFont = *-bolditalic
]
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\end{document}
Das Ergebnis ist zufriedenstellend, wie unten zu sehen ist:
Verwendung von Times New Roman als Hauptschriftart
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\end{document}
Wie das Protokoll zeigt, fehlen die Schriftformen m/sc
und alle.b/sc
m/scit
TeX Gyre Termes als Fallback verwenden
Laut dem Fontspec-Handbuch können wir den Fallback auf Kapitälchen wie folgt festlegen:
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}%
[
SmallCapsFont = TeX Gyre Termes,
SmallCapsFeatures = {Letters=SmallCaps}
]
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\end{document}
Das obige Beispiel kann nur von kompiliert werden lualatex
(da macOS-Benutzer bei Verwendung von keine Schriftarten im Texmf-Baum nach Schriftartnamen verwenden können xelatex
). lualatex
Beides führt jedoch nicht zu einem zufriedenstellenden Ergebnis:
Nachdem ich die Schriftart TeX Gyre Termes auf meinem System installiert habe, xelatex
kann sie ebenfalls verwendet werden, das Ergebnis ist jedoch dasselbe wie im obigen Screenshot.
Frage
Ohne TeX Gyre Termes im System installieren zu müssen, wie kann ich die Fallback-Schriftart für Kapitälchen sowohl unter als xelatex
auch lualatex
für macOS-Benutzer richtig einstellen?
Antwort1
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}%
[
BoldFeatures =
{SmallCapsFont={TeX Gyre Termes Bold},
SmallCapsFeatures = {Letters=SmallCaps}} ,
ItalicFeatures =
{SmallCapsFont={TeX Gyre Termes Italic},
SmallCapsFeatures = {Letters=SmallCaps}} ,
]
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\textbf{\textit{\textsc{hello}}}
\end{document}
In Systemen, in denen Schriftarten im Texmf-Baum nicht anhand des Dateinamens gefunden werden können, könnte dies funktionieren (ungetestet)
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}%
[
BoldFeatures =
{SmallCapsFont={texgyretermes-bold},
SmallCapsFeatures = {Extension=.otf,Letters=SmallCaps}} ,
ItalicFeatures =
{SmallCapsFont={texgyretermes-italic},
SmallCapsFeatures = {Extension=.otf,Letters=SmallCaps}} ,
]
\begin{document}
hello
\textsc{hello}
\textbf{\textsc{hello}}
\textit{\textsc{hello}}
\textbf{\textit{\textsc{hello}}}
\end{document}