Почему я не могу использовать имя шрифта, указанное в выводе fc-list?

Почему я не могу использовать имя шрифта, указанное в выводе fc-list?
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Helvetica Neue LT Pro 55 Roman} % This line is OK.
\setsansfont{HelveticaNeueLT Pro 55 Roman} % This line is ERROR!

\begin{document}
Hello
\end{document}

MWE выше.

Xelatex жалуется следующим сообщением:

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!
! fontspec error: "font-not-found"
! 
! The font "HelveticaNeueLT Pro 55 Roman" cannot be found.
! 
! See the fontspec documentation for further information.
! 
! For immediate help type H <return>.
!...............................................  

l.4 \setsansfont{HelveticaNeueLT Pro 55 Roman}
                                               % This line is ERROR!

Однако fc-list выводит следующее:

/usr/share/fonts/adobe/HelveticaNeueLTPro-Roman.otf: \
Helvetica Neue LT Pro,HelveticaNeueLT Pro 55 Roman: \
style=55 Roman,Regular

Насколько мне известно, HelveticaNeueLT Pro 55 Romanдолжно быть правильным именем шрифта, а Helvetica Neue LT Pro 55 Romanдолжно быть нет. Однако фактический результат, похоже, Helvetica Neue LT Pro 55 Romanявляется допустимым именем шрифта, а HelveticaNeueLT Pro 55 Romanне им. Почему?

Надежны ли выходные данные fc-list для определения названий шрифтов?

решение1

Я не уверен, что выводится fc-listпосле запятой, но XeTeX, похоже, хочет имя семейства (перед запятой, Helvetica Neue LT Pro), за которым может следовать стиль ( 55 Roman). Это дает первую строку, которую вы использовали. Так что вывод fc-list кажется надежным, просто не эта часть.

У меня нет Helvetica Neue LT Pro, но я экспериментировал с Latin Modern (который, я полагаю, есть у большинства людей, у которых установлен TeX). fc-list | grep 'LM Roman 10'дает

/usr/share/texmf/fonts/opentype/public/lm/lmroman10-bold.otf: Latin Modern Roman,LM Roman 10:style=10 Bold,Bold
/usr/share/texmf/fonts/opentype/public/lm/lmroman10-bolditalic.otf: Latin Modern Roman,LM Roman 10:style=10 Bold Italic,Bold Italic
/usr/share/texmf/fonts/opentype/public/lm/lmroman10-regular.otf: Latin Modern Roman,LM Roman 10:style=10 Regular,Regular
/usr/share/texmf/fonts/opentype/public/lm/lmroman10-italic.otf: Latin Modern Roman,LM Roman 10:style=10 Italic,Italic

Теперь для XeTeX у нас есть

\setmainfont{Latin Modern Roman} % OK
\setmainfont{Latin Modern Roman 10 Regular} % OK
\setmainfont{LM Roman 10} % Not OK
\setmainfont{Latin Modern Roman 10 Italic} % OK, font is italic and \textit gives upright

С другой стороны, LuaTeX, похоже, находит шрифты, использующие имя после запятой, но не шрифты, где указан стиль (поэтому я предполагаю, что только вторая строка в вашем примере будет работать с LuaTeX). Однако при доступе к шрифтам таким образом он, похоже, не находит разные стили.

\setmainfont{Latin Modern Roman} % OK
\setmainfont{Latin Modern Roman 10 Regular} % Not OK
\setmainfont{LM Roman 10} % OK, but \textit etc. doesn't work
\setmainfont{LM Roman 10 Regular} % OK, but \textit etc. doesn't work
\setmainfont[ItalicFont=LM Roman 10 Italic,...]{LM Roman 10} % OK

Связанный контент