字体路径错误

字体路径错误

我遇到了与字体路径有关的情况。有些东西没有使用指定的路径,这导致 pdf 构建步骤出现严重故障。奇怪的是,字体似乎已被正确选择,如日志中所示。我要强调我的字体路径,../font/因为这些standalone文件存在于子目录中。我在包文件中使用了一个切换选项。当我从主程序运行编译时,一切都正常工作。

包路径选项开关

\def\mypath{..}

\DeclareOption{main}{%
    \def\mypath{.}%
}%

文件结构

main.tex
  |font/
    |EurostileLTStd-condenced.otf
    |EurostileLTStd-demioblique.otf
  |chapters/
    |standalonefile.tex
  |images/
    |background.png
  |mypackage.sty

第 236 行,说明正确指定了字体路径

(fontspec)             'EurostileLTStd' with options [Path =
(fontspec)             ../font/,Extension = {.otf},UprightFont =
(fontspec)             {*-condenced},BoldFont = {*-demioblique}].

这是错误,位于日志的最后部分。

1457 行

 78 fonts using 6816975 bytes
 128i,15n,123p,627b,1102s stack positions out of 5000i,500n,10000p,200000b,80000s
! error:  (file ) (type 0): cannot find file ''
!  ==> Fatal error occurred, no output PDF file produced!

我知道发生了什么,但不知道如何解决。字体的路径没有被保留或尊重。如果我将目录的副本添加font/到章节目录(它是standalone文件的子目录),则编译成功,您可以在日志中看到路径已从我指定的路径更改。请记住,我没有更改两次构建之间的路径规范,并且第 236 行记录的字体加载路径没有改变。

第 236 行,请注意这些内容仍然正确读取../font/

(fontspec)             'EurostileLTStd' with options [Path =
(fontspec)             ../font/,Extension = {.otf},UprightFont =
(fontspec)             {*-condenced},BoldFont = {*-demioblique}].

第 1457 行,显示路径现在./font/

 78 fonts using 6816975 bytes
 128i,15n,123p,627b,1102s stack positions out of 5000i,500n,10000p,200000b,80000s
<./font/EurostileLTStd-demioblique.otf><./font/EurostileLTStd-condenced.otf>
Output written on main.pdf (1 page, 27356 bytes).

最后要注意的是,我使用相同的路径开关从图像目录加载图像,并且这些工作正常。

这些是用 lualatex 编译的。

相关内容