关于如何完整安装MikTeX

首先,我们这边定义完整安装是指能够正确地编译含有中文的TeX文档。

安装MikTeX本体

以前可能MikTeX在国内没有镜像服务器,然后根据我们当时的基本国情,把本体下载下来都有点小小的困难。现在不同了,直接去官网下载最新的安装包,直接安装就可以了。

官网下载地址: https://miktex.org/download

安装中文支持

也许你听说过XeLaTeX支持Unicode,相对其他LaTeX程序对中文的支持更好了。当然,确实是向着更好的道路上走了点,但是步子其实没那么大——XeLaTeX只解决了它能正确地读取含有Unicode字符的TeX文件,然而并不能正确编译出中文。为了让XeLaTeX编译器正确编译出含中文的文档,还需要一些其他的宏包,在这里以xeCJK为例:

安装完MikTeX之后,打开【MikTeX Console】(也就是MikTeX的控制台),找到【Packages】,搜索【xecjk】,选中对应包,右键安装即可。

如果报告无法连接服务器

安装的时候会需要选择镜像服务器,选择镜像服务器时会向URL“https://api2.miktex.org/hello”发送一个请求。有的时候会返回400错误,然后就向你报告无法连接至服务器。

曲线救国也不是不可以,图形化的console虽然没什么好办法,但是命令行上的console还是有点办法的。打开cmd:

>:: 首先选择一个镜像服务器
>mpm --pick-repository-url
http://mirrors.cqu.edu.cn/CTAN/systems/win32/miktex/tm/packages/

>:: 不出意外应该会返回一个网址,这里返回了一个重庆大学的镜像
>:: 这时候应该就能回图形化console操作了,但cmd开都开了
>mpm --install xecjk
Package "xecjk" has been successfully installed.

>:: 那么这样就算安装好了

正确配置xeCJK

如果只写个\usepackage{xeCJK},然后尝试编译中文文档,默认情况下,你会发现什么都没编译出来,编译出的是个空白文档。查阅日志,你应该会发现这么几行警告:

Package xeCJK Warning: Fandol is being set as the default font for CJK text.
(xeCJK) Please make sure it has been properly installed.
Package fontspec Warning: Font “FandolSong-Regular” does not contain requested
(fontspec) Script “CJK”.

那可能,这个字体文件没有定义Unicode的CJK字符,选个定义了的字体文件就行。还是打开cmd:

>:: 接下来执行的命令产生的文字量比较大,建议导出到文本慢慢看
>miktex-fc-list -f "%{family}\n" :zh > font.txt

>:: 然后打开font.txt挑一个字体名称就行了

文本中每一行都是一种字体,逗号分隔开该种字体的多个别名,任选一个别名皆可,在\usepackage{xeCJK}下追加几行设置字体的部分:

\setCJKmainfont{等距更纱黑体 SC}
\setmainfont{等距更纱黑体 SC}
\setsansfont{等距更纱黑体 SC}

当然也可以直接输入【宋体】、【黑体】等,一般来说就都能正确编译中文了。

留下评论