![为什么 dvips 找不到我的 Type 1 字体?](https://linux22.com/image/247073/%E4%B8%BA%E4%BB%80%E4%B9%88%20dvips%20%E6%89%BE%E4%B8%8D%E5%88%B0%E6%88%91%E7%9A%84%20Type%201%20%E5%AD%97%E4%BD%93%EF%BC%9F.png)
我在两台 Windows 7 机器上安装了 Cygwin。两台机器的系统中都安装了 Adobe basic 35 字体作为 Type 1 字体。然而,当我通过 dvips 运行使用 Palatino 的文件时,生成的 PostScript 输出在一台机器上使用 Palatino-Roman,而在另一台机器上使用 URWPalladioL-Roma。
我通过向 LaTeX 提供以下输入来创建 dvi 文件:
\documentclass{article}
\usepackage{palatino}
\title{Testing}
\begin{document}
This text should come out in Palatino.
\end{document}
没有比这更简单的了。
有什么好的策略可以弄清楚为什么 dvips 在一台机器上找到 Adobe 字体而在另一台机器上找不到?
答案1
我找到了!答案是执行一次这个命令:
updmap --setoption LW35=ADOBE --setoption dvipsDownloadBase35=false
第一个选项告诉 dvips 使用 Adobe 字体而不是免费替代品;第二个选项告诉它不要尝试在输出 PostScript 中嵌入那些字体(它们不是标准 TeX 分发的一部分)。
当 PostScript 转换为 PDF 时,Acrobat 将使用 Adobe 字体执行正确的操作。