Fontspec mit LuaLaTeX unter Verwendung von Arial Narrow, während XeLaTeX korrekt ist

Fontspec mit LuaLaTeX unter Verwendung von Arial Narrow, während XeLaTeX korrekt ist

Ich arbeite gerade an einem Dokument, das ich von mehreren Rechnern aus bearbeite, die beide unter Windows 10 laufen. In beiden Fällen verwende ich Miktex (x64). Auf einem Rechner tritt jedoch ein Problem auf, wenn ich versuche, das folgende MWE zu kompilieren:

\documentclass{book}  
\usepackage{fontspec}
\setmainfont{Arial}  
\usepackage{lipsum}   
\begin{document}
    \lipsum[1-5]
\end{document}

Bei Verwendung von XeLaTeX sieht das PDF wie erwartet aus und Arial wird als eingebettete Schriftart angezeigt. Wenn ich jedoch versuche, Lualatex zu verwenden, verwendet das PDF tatsächlich die schmale Variante der Schriftart.

Die Ausgabe von Xelatex ist die folgende:

.................................................
. fontspec info: "defining-font"
. 
. Font family 'Arial(0)' created for font 'Arial' with options
. [Ligatures=TeX].
. 
. This font family consists of the following NFSS series/shapes:
. - 'normal' (m/n) with NFSS spec.:
. <->"Arial/OT:script=latn;language=DFLT;mapping=tex-text;"
. - 'small caps'  (m/sc) with NFSS spec.:
. <->"Arial/OT:script=latn;language=DFLT;mapping=tex-text;+smcp;"- 'bold'
. (bx/n) with NFSS spec.:
. <->"Arial/B/OT:script=latn;language=DFLT;mapping=tex-text;"
. - 'bold small caps'  (bx/sc) with NFSS spec.:
. <->"Arial/B/OT:script=latn;language=DFLT;mapping=tex-text;+smcp;"- 'italic'
. (m/it) with NFSS spec.:
. <->"Arial/I/OT:script=latn;language=DFLT;mapping=tex-text;"
. - 'italic small caps'  (m/itsc) with NFSS spec.:
. <->"Arial/I/OT:script=latn;language=DFLT;mapping=tex-text;+smcp;"- 'bold
. italic' (bx/it) with NFSS spec.:
. <->"Arial/BI/OT:script=latn;language=DFLT;mapping=tex-text;"
. - 'bold italic small caps'  (bx/itsc) with NFSS spec.:
. <->"Arial/BI/OT:script=latn;language=DFLT;mapping=tex-text;+smcp;"
.................................................

Die Ausgabe von Lualatex ist:

.................................................
. fontspec info: "defining-font"
. 
. Font family 'Arial(0)' created for font 'Arial' with options
. [Ligatures=TeX].
. 
. This font family consists of the following NFSS series/shapes:
. - 'normal' (m/n) with NFSS spec.: <->"Arial:mode=node;+tlig;"
. - 'small caps'  (m/sc) with NFSS spec.: - 'bold' (bx/n) with NFSS spec.:
. <->"Arial/B:mode=node;+tlig;"
. - 'bold small caps'  (bx/sc) with NFSS spec.: - 'italic' (m/it) with NFSS
. spec.: <->"Arial/I:mode=node;+tlig;"
. - 'italic small caps'  (m/itsc) with NFSS spec.: - 'bold italic' (bx/it)
. with NFSS spec.: <->"Arial/BI:mode=node;+tlig;"
. - 'bold italic small caps'  (bx/itsc) with NFSS spec.: 
.................................................

Ich vermutete, dass Lualatex standardmäßig die schmale Variante anstelle der normalen Schriftart verwendet. Beim Ausführen luaotfload-tool --find="Arial"wird die folgende Ausgabe ausgegeben

luaotfload | resolve : Font "Arial" found!
luaotfload | resolve : Resolved file name "c:/windows/fonts/arialn.ttf

Mir scheint, dass die Suche tatsächlich falsch ist. Ich habe versucht, die cache=purgeOptionen , forceund zu verwenden flush-lookup, aber ohne Erfolg. Gibt es eine Möglichkeit, die Suche manuell zu ändern, damit sie auf die richtige Datei verweist?

Antwort1

Dies kann helfen, bis das Problem behoben und in die Distributionen hochgeladen ist.

\documentclass{book}  
\usepackage{fontspec}
\setmainfont{arial}[ %Need such long loading because of luaotfload issue
    Extension = .ttf,
    UprightFont = *,
    BoldFont = *bd,
    ItalicFont = *i,
    BoldItalicFont = *bi]
\newfontfamily\cyrillicfont{arial}[ %for Cyrillic users
    Extension = .ttf ,
    UprightFont = *,
    BoldFont = *bd,
    ItalicFont = *i,
    BoldItalicFont = *bi]
\usepackage{lipsum}   
\begin{document}
    \lipsum[1-5]
\end{document}

Idea kann für betroffene Schriftarten verwendet werden. Man kann überprüfen

luaotfload-tool --find="Arial"

Punkte, auf arialn.ttfdie Arial Narrow und

luaotfload-tool --find="DejaVuSerif"

verweist auf dejavuserifcondensed.ttfDejaVuSerifCondensed.

Das Problem ist zumindesteinen Monat alt.

verwandte Informationen