我正在尝试使用 pdfTeX(没有 XeTeX 也没有 LuaTeX)在 LaTeX 中使用替代字体。
我已经安装字体专家使用 Adobe Reader 的 Minion 和 Myriad Pro,加上我拥有的一些 Cronos Pro 文件;小系列(无半粗体)但具有所有光学尺寸(文本、capt、subh、disp)。在构建之前,我已根据说明重命名了我的 CronosPro 文件。安装似乎运行良好。
CronosPro
但是,当我尝试使用带有slides
或选项的包时,出现致命错误opticals
。
非工作示例:
\documentclass[a4paper,10pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[opticals]{CronosPro}
\begin{document}
\sffamily
\LARGE Text
\end{document}
得出:
[...]
kpathsea: Running mktexpk --mfmode / --bdpi 600 --mag 0+573/600 --dpi 573
CronosPro-Subh-Base-ac
mktexpk: don't know how to create bitmap font for CronosPro-Subh-Base-ac.
mktexpk: perhaps CronosPro-Subh-Base-ac is missing from the map file.
kpathsea: Appending font creation commands to missfont.log.
!pdfTeX error: /usr/texbin/pdflatex (file CronosPro-Subh-Base-ac): Font
CronosPro-Subh-Base-ac at 573 not found
==> Fatal error occurred, no output PDF file produced!
再次,我做过在运行之前将 放入FontPro 的子文件夹CronosPro-Subh.otf
中。对于可能发生的情况有什么建议吗?otf
make all
答案1
为了使用新字体,您需要确保两件事:可以找到所有文件,并且字体正确列在 TeX 用来匹配不同字体信息的映射文件中。
如果在 TeX Live 上安装,我建议按照以下步骤操作:
在安装字体之前先测试一下。为此,将所有文件放在一个目录中(或制作副本或符号链接或其他),使用新包创建一个测试文件并在命令
\pdfmapfile{+CronosPro.map}
前添加\usepackage...
。使用 pdfLaTeX 进行编译并检查结果是否符合预期。- 如果此步骤失败,您就会遇到麻烦。不要费心安装字体,因为移动字体不会让它们突然起作用。要么是软件包有问题,要么是您在转换字体或准备安装软件包时犯了错误。无论哪种情况,请返回
README
或安装说明,并在必要时寻求他人的帮助。
- 如果此步骤失败,您就会遇到麻烦。不要费心安装字体,因为移动字体不会让它们突然起作用。要么是软件包有问题,要么是您在转换字体或准备安装软件包时犯了错误。无论哪种情况,请返回
安装到,
TEXMFLOCAL
除非您没有权限。如果您不确定它在哪里,请运行kpsewhich --var TEXMFLOCAL
以查找。在 Unix-ish 系统上,使用上游的安装程序,/usr/local/texlive/texmf-local
除非您更改了默认设置,否则它将是这个。将文件放在 中的相关位置
TEXMFLOCAL
。例如,对于来自 的 type1 字体,vendor
打包为packagename
:.tfm
文件fonts/tfm/vendor/packagename
.pfb
文件fonts/type1/vendor/packagename
.map
文件fonts/map/dvips/packagename
.fd
文件和.sty
文件[如果适用]tex/latex/packagename
- 文件
doc/fonts/packagename
[如适用] .vf
文件位于fonts/vf/vendor/packagename
[如果适用].enc
文件位于fonts/enc/dvips/packagename
[如果适用].afm
文件位于fonts/afm/vendor/packagename
[如果适用]- 源文件位于
source/fonts/packagename
[如果适用]
通过运行告诉 TeX 有关新文件的信息
mktexlsr $(kpsewhich --var TeXMFLOCAL))
。updmap-sys --enable Map=<mapfilename>.map
通过运行例如来安装新的地图文件片段updmap-sys --enable Map=CronosPro.map
。- 注意输出。如果地图文件未更新或
updmap-sys
无法找到某些内容,则需要诊断并纠正问题。如果需要帮助,请务必包含错误并说明您之前遵循的步骤。
- 注意输出。如果地图文件未更新或
现在将测试文件移至一个干净的目录,删除手动添加地图文件的行,然后重新运行它。它应该像以前一样工作。
如果一切顺利,请转至步骤 5。
如果不是,请转至步骤 4。
要检查/尝试的事情:
如果 LaTeX 抱怨找不到文件,请运行
kpsewhich <filename>
检查。如果仍然找不到,请查找该文件。您是否将其安装在正确的位置?如果没有,请适当移动它。进行任何必要的调整后,转到步骤 2.2。在继续执行步骤 2.3 之前,请检查是否找到了该文件。如果 LaTeX 根本找不到字体(即没有抱怨特定文件,带有扩展名,但就是找不到没有扩展名的命名字体),请获取 的值
kpsewhich -var-value TEXMFSYSVAR
并查看TEXMFSYSVAR/fonts/map/pdftex/updmap/
。这里的文件是否包含该字体?如果没有,请检查.map
您之前安装的文件。字体是否列在那里?如果没有,则有更严重的问题。但如果是,请尝试重新运行步骤 2.2 和 2.3。.texliveYYYY
您的主目录中是否有目录名,YYYY
您的 TeX Live 安装版本在哪里?例如,对于 GNU/Linux 系统上的 TL 2014,/home/username/.texlive2014
如果username
您的用户名是该目录,则该目录就是。如果您有这样的目录,请重命名或删除它。(仅当您 100% 确信您拥有正确的目录时才删除。)如果这没有帮助,
updmap-sys --disable <mapfile>.map
那么跑步updmap-sys --enable Map=<mapfile>.map
也许能起到作用。如果现在可以工作,请转到步骤 5。
如果没有,请更新您的问题或(如果您不是原作者)提出一个新问题,详细说明上述步骤的结果。请务必包含步骤 2.3 的输出以及尝试编译测试文件时遇到的具体错误。
您已完成!