最近想到一个问题:如何在
LaTeX
\LaTeX
LATEX中使用第三方字体。
这个问题其实挺基础的,但是因为小白的
LaTeX
\LaTeX
LATEX水平,应该说五六年了,毫无进步。
所以确实还是需要解决一下这个基础的问题。
小白最近使用的是TeXstudio,这也比较符合小白的身份,毕竟这个工具里面有很多的可视化和提示性操作。
首先是小白套模板哈,为了凑个效果,用了千古名篇,唐代王勃的《滕王阁序》作为示例的文本。
\documentclass[]{ctexart}
\usepackage[utf8]{inputenc}
\usepackage{fontspec}
\setCJKmainfont{隶书}
%opening
\title{滕王阁序}
\author{王勃}
\begin{document}
\maketitle
豫章故郡,洪都新府。星分翼轸,地接衡庐。襟三江而带五湖,控蛮荆而引瓯越。物华天宝,龙光射牛斗之墟;人杰地灵,徐孺下陈蕃之榻。雄州雾列,俊采星驰。台隍枕夷夏之交,宾主尽东南之美。都督阎公之雅望,棨戟遥临;宇文新州之懿范,䄡帷暂驻。十旬休假,胜友如云;千里逢迎,高朋满座。腾蛟起凤,孟学士之词宗;紫电青霜,王将军之武库。家君作宰,路出名区;童子何知,躬逢胜饯。
时维九月,序属三秋。潦水尽而寒潭清,烟光凝而暮山紫。俨骖騑于上路,访风景于崇阿。临帝子之长洲,得天人之旧馆。层峦耸翠,上出重霄;飞阁流丹,下临无地。鹤汀凫渚,穷岛屿之萦回;桂殿兰宫,即冈峦之体势。
披绣闼,俯雕甍,山原旷其盈视,川泽纡其骇瞩。闾阎扑地,钟鸣鼎食之家;舸舰弥津,青雀黄龙之舳。云销雨霁,彩彻区明。落霞与孤鹜齐飞,秋水共长天一色。渔舟唱晚,响穷彭蠡之滨,雁阵惊寒,声断衡阳之浦。
遥襟甫畅,逸兴遄飞。爽籁发而清风生,纤歌凝而白云遏。睢园绿竹,气凌彭泽之樽;邺水朱华,光照临川之笔。四美具,二难并。穷睇眄于中天,极娱游于暇日。天高地迥,觉宇宙之无穷;兴尽悲来,识盈虚之有数。望长安于日下,目吴会于云间。地势极而南溟深,天柱高而北辰远。关山难越,谁悲失路之人;萍水相逢,尽是他乡之客。怀帝阍而不见,奉宣室以何年?
嗟乎!时运不齐,命途多舛。冯唐易老,李广难封。屈贾谊于长沙,非无圣主;窜梁鸿于海曲,岂乏明时?所赖君子见机,达人知命。老当益壮,宁移白首之心?穷且益坚,不坠青云之志。酌贪泉而觉爽,处涸辙以犹欢。北海虽赊,扶摇可接;东隅已逝,桑榆非晚。孟尝高洁,空余报国之情;阮籍猖狂,岂效穷途之哭!
勃,三尺微命,一介书生。无路请缨,等终军之弱冠;有怀投笔,慕宗悫之长风。舍簪笏于百龄,奉晨昏于万里。非谢家之宝树,接孟氏之芳邻。他日趋庭,叨陪鲤对;今兹捧袂,喜托龙门。杨意不逢,抚凌云而自惜;钟期既遇,奏流水以何惭?
呜呼!胜地不常,盛筵难再;兰亭已矣,梓泽丘墟。临别赠言,幸承恩于伟饯;登高作赋,是所望于群公。敢竭鄙怀,恭疏短引;一言均赋,四韵俱成。请洒潘江,各倾陆海云尔:
滕王高阁临江渚,佩玉鸣鸾罢歌舞。
画栋朝飞南浦云,珠帘暮卷西山雨。
闲云潭影日悠悠,物换星移几度秋。
阁中帝子今何在?槛外长江空自流。
\end{document}
列位注意哈,有中文输入时,最好使用XeLaTeX作为编译器,否则很多包可能编译不通过。隶书是系统自带的字体,效果图如下所示:
这段代码中只需要注意
\setCJKmainfont{隶书}
这句就是设置中文字体。
那么如何设置非系统自带字体呢?
比如小白下载了可免费商用的“阿里巴巴普惠体”。
小白还是查询了一些资料,安装字体时需要勾选“为所有用户安装”,这样的目的是保证安装的字体能够自动进入C:\\Windows\Fonts
路径下面。
然后把刚才设置中文字体那句命令改为:
\setCJKmainfont{阿里巴巴普惠体}
效果如下:
好了,那么“依此类推”,试下“钉钉进步体”?
\setCJKmainfont{钉钉进步体}
果然,成功总是偶然的。小白本着探索精神,想了下,为啥呢?
于是我们回到C:\\Windows\Fonts
路径下面:
将查看模式调成“详细信息”之后,右键,属性:
原来这货的名称是这样(可以直接以ttf文件的名称来指示字体文件):
\setCJKmainfont{DingTalkJinBuTi-Regular.ttf}
成功:
但是由于小白用的这篇古文中,该字体对有些生僻字还支持得不太好,仅上面第一段就有俩字没显示出来:分别是“棨戟遥临”的“棨”字,和“襜帷暂驻”的“襜”字。
其他字体再展示一下:
阿里妈妈刀隶体:(也是上述两个字no match)
阿里妈妈东方大楷:
但是小白发现,这一招好像只对ttf文件有用,如果是otf文件,就怎么都会失败。水平所限,无法解释这个问题,可能需要去查一下 LaTeX \LaTeX LATEX的官方说明。暂且偷个懒,就写到这里。
聊以此志,以飨诸君。