Kko

如果要实现题目所说的目的,一般会使用一些宏包来实现,比如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}

 

参考了此网站

posted on 2015-08-09 13:56  Kko  阅读(12657)  评论(0编辑  收藏  举报