/setmainfont Ошибка на пути глубиной 2 уровня?

/setmainfont Ошибка на пути глубиной 2 уровня?

Я пытаюсь разместить все свои настройки и шрифты в папке активов, чтобы я мог использовать их в нескольких документах и ​​поддерживать те же стили. К сожалению, всякий раз, когда я пытаюсь поместить шрифты в путь на два уровня глубже, я не могу скомпилировать документ. Я получаю ошибку:

! error:  (type 2): cannot find file ''
!  ==> Fatal error occurred, no output PDF file produced!

Ниже представлены работы:

\newcommand{\fontmercury}{\setmainfont[Path = ./fonts/,
  BoldFont=mercurybd.ttf,
  ItalicFont=mercuryi.ttf,
  BoldItalicFont=mercurybi.ttf
  ]{mercury.ttf}
}

Это не работает:

\newcommand{\fontmercury}{\setmainfont[Path = ./assets/fonts/,
  BoldFont=mercurybd.ttf,
  ItalicFont=mercuryi.ttf,
  BoldItalicFont=mercurybi.ttf
  ]{mercury.ttf}
}

Путь правильный, просто выдает ошибку каждый раз, когда я углубляюсь более чем на один уровень.

EDIT: Я разобрался. Это была проблема с кэшем, о которой здесь говорили. Удаление папки otl в моем случае позволило скомпилировать.LuaTeX не может найти существующий шрифт

решение1

В дополнение к удалению устаревшего otlкаталога, вам также следует рассмотреть возможность использования другой настройки для \fontmercury. fontspecПакет предоставляет \newfontfamilyдирективу. В рассматриваемом случае использование \newfontfamilyкажется более эффективным, чем выдача \setmainfontдирективы. Вы можете вставить следующие инструкции в преамбулу:

\newfontfamily{\mercury}{mercury.ttf}%
      [Path           = ./fonts/,
       BoldFont       = mercurybd.ttf,
       ItalicFont     = mercuryi.ttf,
       BoldItalicFont = mercurybi.ttf]
\newcommand{\fontmercury}[1]{{\mercury #1}}

Затем в тексте документа вы пишете:

\fontmercury{...}

решение2

Думаю, я опубликую это как ответ, так как не уверен, как отметить это как ответ. Но я разобрался вскоре после публикации. Я использую TeXLive + TeXWorks. Поэтому я удалил папку otl в path C:\texlive\2017\texmf-var\luatex-cache\generic\fonts\otl. Это сработало, когда дело дошло до сборки документа после.

Подробнее:LuaTeX не может найти существующий шрифт

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