首页 > 代码库 > Latex之CJK中文书签乱码[转]
Latex之CJK中文书签乱码[转]
在使用CJK宏包编辑中文时,可以使用不同的编码方式,一种是UTF-8格式;另外一种是GBK编码。在使用GBK编码时,生成的PDF格式中的文本是GBK的编码方式,因此大部分不支持GBK编码的PDF阅读器无法正确的显示PDF文档,如下图所示。
这是因为在使用Hyperref宏包产生书签(Bookmark)时,使用的参数为CJKbookmarks=true,该参数不能与Hyperref的unicode参数同时使用,不然会产生冲突。因此,要么源文件中改用UTF-8的编码方式,要么使用GBK编码生成PDF中,改变编码方式。本文主要介绍第二种。
解决问题的思路很简单,即在生成PDF过程中改变编码方式,而改变的方法是将编译中间生成的.out文件中的GBK编码替换掉。这里推荐一个好用的小工具,即gbk2uni。该工具可以将out文件中的书签变成unicode格式。使用方法如下:
- 使用PdfLatex和BibTex等工具生成带有中文乱码的PDF文档;
- 下载上述的工具gbk2uni,在.out文件所在目录执行gbk2uni *.out
- 在转换成功后,只需执行PdfLatex一次即可。
除了上述工具,还有人用Python实现了gbk2uni,参考地址在这里。执行成功后如下图所示。
转自:http://blog.csdn.net/zxia1/article/details/17504147
Latex之CJK中文书签乱码[转]
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。