前一个月我 LaTeX LaTeX LATEX遇到了问题,使用最基本的section环境都会出问题,黑体中文字符全部变成□。当然至今也没有解决,如果有好心人知道解决方案可以告诉我(我会把我遇到的问题放到文章最后,不影响大家观看)。为了解决这一问题,我发现texworks在报错信息里有中文路径的乱码,于是改成了英文路径。结果雪上加霜,连texworks都无法打开了,双击.tex文件直接弹出下图的内容:
查阅资料后发现要修改注册表信息,找了好久才找到地址,于是写下本文以帮助遇到类似问题的大家。
1、修改texworks注册表数据值(打开路径)的方式首先按Win+R,输入regedit,按下Enter(回车)键,此时打开了注册表编辑器,如下图所示:
我texworks.exe的原本储存路径是F:LaTeX2019LaTeX2019文件texlive2019binwin32texworks.exe
然后以把文件名LaTeX2019文件修改为LaTeX2019_file为例,给大家展示修改方法:
在注册表编辑器里找到路径:计算机HKEY_CLASSES_ROOTTL.TeXworks.edit.2019shellopencommand,如下图所示:
将数值修改(右键名称栏对应的“(默认)”,再选择“修改”)为"F:LaTeX2019LaTeX2019_filetexlive2019binwin32texworks.exe" "%1"即可。
值得注意的是,还有其他文件也依赖于这个途径,目前只发现了这三个路径(含上文提到的路径),建议一并修改,以防日后麻烦:
计算机HKEY_CLASSES_ROOTTL.bitmap2eps.convert.2019shellopencommand
计算机HKEY_CLASSES_ROOTTL.DVIOUT.view.2019shellopencommand
计算机HKEY_CLASSES_ROOTTL.TeXworks.edit.2019shellopencommand
上面已经把该说的说完了,还是说下我遇到的问题吧,毕竟这个问题困扰我一年多了,至今也没解决。
首先是编译这样的代码:
documentclass[UTF8]{ctexart}begin{document} section{你好,世界!}end{document}然后section环境的文字就变成□了。
经过测试,用pdfLaTeX编译就没有问题,XeLaTeX就有问题。通过查阅资料,发现XeLaTeX和pdfLaTeX的一大区别就是:XeLaTeX使用了TrueType字体。虽然我这个简短的程序没有Warning信息,但是我用了其他相对长一点的LaTeX代码就给了一段Warning信息:
发现缺失SimHei字体,目测是标题默认TrueType的黑体字,结果LaTeX抽风找不到(毕竟我word都没问题)。
然后我在网上找到SimHei.ttf文件安装进去。然后……然并卵,还是报警告,而且在安装的字体库里也没找到SImHei字体,section环境的中文字符还是变成□。自闭了……