我想将我的工作成果的 LaTeX 源代码分发给使用不同平台的不同人,并且我希望他们不必手动安装我使用的字体。我正在使用这种字体:http://www.math.unl.edu/~shartke2/computer/latex/Millennial-20110819.tar.bz2
有没有办法可以pdflatex
从 LaTeX 源指向使用与 LaTeX 源文件位于同一目录中的字体包(Millenial)?
答案1
一般来说,Latex 会在三个地方搜索并使用它首先找到的文件:
- 文件夹
- 用户 texmf 树
- 分发树
如果在位置 1 找到该文件,它将停止搜索,否则它将继续在位置 2 进行搜索,等等。这意味着如果您将打包的文件放在文档文件夹中(或保存类文件的路径),Latex 就会找到它。但请确保在此分发的字体符合其许可证!
答案2
好的,现在我又找到了我的账户密码,我会回答我自己的问题。我找到了一个非常符合我需求的解决方案,因为我正在使用自定义构建脚本来编译我的文档。
Tobi 的意思是搜索 TeX 的路径TEXINPUTS
。似乎无法从 LaTeX 文档内部设置此路径:
(看一下http://newsgroups.derkeiler.com/Archive/Comp/comp.text.tex/2006-12/msg01539.html)
我的解决方案是在调用之前导出以下变量pdflatex
(注意:如果导出相对路径,则它必须相对于调用 pdflatex 的目录,双斜杠表示应递归搜索文件夹,这正是我们需要的):
UNIX 系统:
export TEXINPUTS=./path/to/font/directory//:
export TEXFONTS=./path/to/font/directory//:
WINDOWS 系统:
set TEXFONTS=./path/to/font/directory//;
set TEXINPUTS=./path/to/font/directory//;
我的文档目录中有两个可用的编译脚本:用于unix系统的compile.sh和用于windows系统的compile.bat。
编辑: 我忘了说了,添加
\pdfmapfile{=Fontname.map}
到文档中,以便使用字体。(将 Fontname 替换为字体名称)。这省去了运行的时间updmap
,因为我们不需要涉及系统范围的步骤,只需使用我们附加的字体即可。