我怎样才能将非 CTAN 字体与我的源文件一起分发?

我怎样才能将非 CTAN 字体与我的源文件一起分发?

我想将我的工作成果的 LaTeX 源代码分发给使用不同平台的不同人,并且我希望他们不必手动安装我使用的字体。我正在使用这种字体:http://www.math.unl.edu/~shartke2/computer/latex/Millennial-20110819.tar.bz2

有没有办法可以pdflatex从 LaTeX 源指向使用与 LaTeX 源文件位于同一目录中的字体包(Millenial)?

答案1

一般来说,Latex 会在三个地方搜索并使用它首先找到的文件:

  1. 文件夹
  2. 用户 texmf 树
  3. 分发树

如果在位置 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,因为我们不需要涉及系统范围的步骤,只需使用我们附加的字体即可。

相关内容