我有一个在 apache tomcat 上运行的 Web 应用程序。该进程的用户是“www”。此用户的主目录是“/nonexistent”,我不想更改它。(它被设置为一个不存在的目录,这样即使服务器进程以某种方式被黑客入侵并且有人控制了用户帐户,也没有人可以以该用户身份登录。)此 Web 服务使用 xelatex 从数据库生成 pdf 报告。一些 pdf 报告需要特殊的 True Type 字体。这些字体可以安装在 ~/.fonts 中供任何普通用户使用。但是这个 www 用户没有有效的主目录,也不应该有。问题是:我能否以某种方式为 xelatex 指定字体目录?我已经使用 TEXTINPUTS 来指定 tex 文件的搜索路径,但我找不到任何类似的字体文件。那么是否有环境变量或命令行选项?如果没有,那么我的其他选择是什么?出于显而易见的原因,我想将 Web 应用程序特定的 True Type 字体与基本 Livetex 发行版的字体分开。可以吗?
答案1
ExternalLocation 确实有效。
\setmainfont[ExternalLocation={/some/directory/}]{some_file.ttf}