
Ich möchte die Schriftart Gill Sans verwenden, die /Library/Fonts/GillSans.ttc
auf meinem Mac installiert ist. Laut fontspec
Dokumentation sollte ich TrueType Collections verwenden können, indem ich den Schriftindex angebe. Laut Dokumentation sollte dies mit LuaTeX funktionieren, aber ich habe Probleme, es zum Laufen zu bringen.
Die Unterstützung für TrueType Collections wurde nur in XeTeX getestet, sollte aber auch mit einer aktuellen Version von LuaTeX und dem
luaotfload
Paket funktionieren.
Das folgende Minimaldokument funktioniert insofern, als dass es Gill Sans verwendet, und es scheint sogar möglich zu sein, bestimmte Stärken/Formen der Schriftart zu verwenden, indem man eine neue Schriftfamilie definiert. Es funktioniert jedoch nicht, und es ist nicht möglich, Befehle wie , , \setmainfont
zu verwenden .\textbf{}
\textit{}
usw., wie im Screenshot der Ausgabe aus der Kompilierung dieses Dokuments zu sehen ist.
\documentclass{article}
\usepackage{fontspec}
\setmainfont[
Ligatures=TeX,
Extension=.ttc,
UprightFeatures={FontIndex=0},
BoldFeatures={FontIndex=4},
ItalicFeatures={FontIndex=2},
BoldItalicFeatures={FontIndex=5}]{GillSans}
\newfontfamily\SemiBold[
Ligatures=TeX,
Extension=.ttc,
UprightFeatures={FontIndex=4}]{GillSans}
\begin{document}
\textbf{asdf}
\textit{asdf}
asdf
\textbf{\textit{asdf}}
{\SemiBold asdf}
\end{document}
Weiß jemand, was das Problem sein könnte und wie es gelöst werden kann? Das Protokoll zeigt Folgendes:
LaTeX Font Warning: Font shape `TU/GillSans(0)/b/n' undefined
(Font) using `TU/GillSans(0)/m/n' instead on input line 18.
LaTeX Font Warning: Font shape `TU/GillSans(0)/m/it' undefined
(Font) using `TU/GillSans(0)/m/n' instead on input line 19.
LaTeX Font Warning: Font shape `TU/GillSans(0)/b/it' undefined
(Font) using `TU/GillSans(0)/b/n' instead on input line 21.
Darüber hinaus kann der folgende Befehl in einer Shell ausgeführt werden.
luaotfload-tool --find 'Gill Sans SemiBold' -i
gibt Folgendes zurück, was darauf schließen lässt, dass es im obigen Dokument funktionieren sollte, die halbfette Schriftart über Index 4 als BoldFont auszuwählen:
luaotfload | resolve : Font "Gill Sans SemiBold" found!
luaotfload | resolve : Resolved file name "/Library/Fonts/GillSans.ttc", subfont nr. 4
** 1 Gill Sans SemiBold ********************************************************
ascender: 1487
averagewidth: 1154
boundingbox: <table>
1: -1162
2: -512
3: 2279
4: 1931
capheight: 1397
defaultvheight: 0
descender: -561
family: Gill Sans
fontname: GillSans-SemiBold
fullname: Gill Sans SemiBold
italicangle: 0.0
monospaced: false
panoseweight: demi
panosewidth: normal
pfmweight: 600
pfmwidth: 5
platformnames: <table>
macintosh: <table>
family: Gill Sans
fullname: Gill Sans SemiBold
postscriptname: GillSans-SemiBold
subfamily: SemiBold
windows: <table>
family: Gill Sans
fullname: Gill Sans SemiBold
postscriptname: GillSans-SemiBold
subfamily: SemiBold
subfamily: SemiBold
subfontindex: 4
units: 2048
version: 13.0d1e4
weight: semibold
width: normal
xheight: 934
Ich verwende MacTeX 2020, v3.14/2020-05-06 von luaotfload-tool
und v2.7i von fontspec
.
Antwort1
Beim Arbeiten mit ttc Dateien sollte man nicht verwenden, Extension
sondern direkt an den Namen anfügen , da es sonst zu spät erkannt wird und man / / manuell .ttc
setzen muss :ItalicFont
BoldFont
BoldItalicFont
\documentclass{article}
\usepackage{fontspec}
\setmainfont[
Ligatures=TeX,
UprightFeatures={FontIndex=0},
BoldFeatures={FontIndex=4},
ItalicFeatures={FontIndex=2},
BoldItalicFeatures={FontIndex=5}]{GillSans.ttc}
\newfontfamily\SemiBold[
Ligatures=TeX,
Extension=.ttc,
UprightFeatures={FontIndex=4}]{GillSans}
\begin{document}
\textbf{asdf}
\textit{asdf}
asdf
\textbf{\textit{asdf}}
{\SemiBold asdf}
\end{document}