Problema al usar fuentes .ttf con XeLaTeX

Problema al usar fuentes .ttf con XeLaTeX

Tengo algunas .ttffuentes ~/Library/Fontsque me gustaría usar con XeLaTeX, pero parece que no puedo encontrarlas. Por ejemplo, esto compilará:

\documentclass[]{article}
\usepackage{fontspec}
\setmainfont{Times New Roman}

\begin{document}
The quick brown fox jumps over the lazy dog.
\end{document}

Pero esto no lo hará:

\documentclass[]{article}
\usepackage{fontspec}
\setmainfont{Times New Roman.ttf}

\begin{document}
The quick brown fox jumps over the lazy dog.
\end{document}

Y sí, Times New Roman.ttfestá en ~/Library/Fonts.

Respuesta1

Parece que no entiendes bien la búsqueda de fuentes xetex. Los diferentes mecanismos de búsqueda se describen en detalle en elManual de XeTeX, pero intentaré resumir un poco las cosas para obtener una respuesta.

Si proporciona un nombre de fuente, por ejemplo, Times New Roman, como en el primer ejemplo, donde llama

\setmainfont{Times New Roman}

entonces XeTeX utilizará la utilidad de fuentes de su sistema para buscar la fuente. En GNU/Linux esto suele ser fontconfig. XeTeX dirá fontconfig“¿Dónde está la fuente con el nombre «Times New Roman»?” y fontconfigresponderá algo como “Está ubicada en .fonts/Times New Roman/Times New Roman.ttf”. Luego XeTeX procederá a llamar xdvipdfmy carga la fuente de ese archivo.

Si proporciona un nombre de archivo en lugar de un nombre de fuente, por ejemplo Times New Roman.ttf, como en

\setmainfont{Times New Roman.ttf}

luego XeTeX entregará inmediatamente a la xdvipdfmutilidad la inclusión de la fuente de ese archivo, es decir, desde Times New Roman.ttfel directorio actual o desde kpathseael texmfárbol.

Es recomendable instalar fuentes como fuentes del sistema, de modo que no tenga varias copias de una fuente flotando en sus directorios. Si esto no es posible por cualquier motivo, entonces deberías colocar los archivos de fuentes junto a tu documento en el mismo directorio o tal vez, si utilizas muchas fuentes, en una subcarpeta dedicada exclusivamente a las fuentes. Luego puede cargar las fuentes por sus rutas relativas, como en

\setmainfont{fonts/Times New Roman.ttf}

NB: No me gustan los espacios en los nombres de los archivos, porque algunas piezas de software tienden a fallar si no se les escapa correctamente.

información relacionada