fontspec con LuaLaTeX usando Arial Narrow, mientras que XeLaTeX es correcto

fontspec con LuaLaTeX usando Arial Narrow, mientras que XeLaTeX es correcto

Actualmente estoy trabajando en un documento que edito desde varias máquinas, ambas con Windows 10. En ambos casos estoy usando Miktex (x64). Sin embargo, hay un problema en una máquina cuando intento compilar el siguiente MWE:

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

Al utilizar XeLaTeX, el PDF tiene el aspecto esperado y Arial se muestra como fuente incrustada. Sin embargo, cuando intento usar Lualatex, el PDF en realidad usa la variante estrecha de la fuente.

El resultado de Xelatex es el siguiente:

.................................................
. 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;"
.................................................

La salida de Lualatex es:

.................................................
. 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.: 
.................................................

Sospeché que Lualatex en realidad utiliza de forma predeterminada la variante estrecha en lugar de la fuente normal. Ejecutar luaotfload-tool --find="Arial"da el siguiente resultado

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

Me parece que la búsqueda es realmente incorrecta. Intenté usar las cache=purgeopciones forcey flush-lookup, pero fue en vano. ¿Hay alguna manera de modificar la búsqueda manualmente para que apunte al archivo correcto?

Respuesta1

Esto puede ayudar hasta que el problema se solucione y se cargue en distribuciones.

\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}

La idea se puede utilizar para las fuentes afectadas. uno puede comprobar

luaotfload-tool --find="Arial"

puntos a arialn.ttflos cuales es Arial Estrecho y

luaotfload-tool --find="DejaVuSerif"

apunta a dejavuserifcondensed.ttfque es DejaVuSerifCondensed.

El problema es al menosun mes de edad.

información relacionada