如果要实现题目所说的目的,一般会使用一些宏包来实现,比如txfonts等。但是如果想要更改的字体不在宏包所包括的范围内,比如想把字体更改为Times New Roman,在这种情况下,需要我们手动实现目的。此方法还未经尝试,暂时当作笔记记下来,如果有尝试了或对此话题比较了解的请一定在下方评论,指点一二。
需要声明的一点是,我使用的是MacTeX,如果是Windows环境则应该去寻找对应的目录,在此不再赘述。
首先要确认想要更改的字体文件是否在“/Library/Fonts/”中,没有的话就说明系统中不存在这样的字体,就不在本篇讨论的范围内了。可以用下面的命令来确认。输入的是$符号后面的内容。
$ls /Library/Fonts/Times\ New\ Roman
如果输出中包括了Times New Roman等等的字体(.ttf文件)就说明操作系统中含有这些字体,可以进行下面的步骤。
由于这些字体是TrueType形式的,需要将它们转换为PS Type 1 Binary形式(.pfb文件)的字体文件。这一步骤可以使用“ttf2pt1”命令来实现。
$ttf2pt1 -b Times\ New\ Roman.ttf pnsr8a $ttf2pt1 -b Times\ New\ Roman\ Italic.ttf pnsri8a $ttf2pt1 -b Times\ New\ Roman\ Bold.ttf pnsb8a $ttf2pt1 -b Times\ New\ Roman\ Bold\ Italic.ttf pnsrbi8a
并将生成的文件放入LaTeX的字体文件夹中(大概是.../texmf/fonts/这个)。并下载配置文件。timesnewx.dmg。或这个文件。timesnewx.zip。
将配置文件分别放入下面的文件夹中。
pns.map放入.../texmf/dvips/timesnew/
.tfm文件放入.../texmf/fonts/tfm/adobe/timesnew/
.fd文件和timesnew.sty文件放入.../texmf/tex/latex/timesnew/
使用“updmap”命令来更新LaTeX的字体map。
$sudo updmap --enable Map
/opt/local/share/texmf//dvips/timesnew/pns.map
最后在LaTeX中写下指令即可。
1 \usepackage{mathptmx} 2 \usepackage[LY1]{fontenc} 3 \usepackage{timesnewx}
参考了此网站。