doxygen生成PDF文档
众所周知,能够利用doxygen生成pdf文档——但是,如果其中含有中文的话,那就会遇到一大堆问题无法顺利输出。我花了很长时间摸索,最终找到了让doxygen顺利生成中文pdf的办法。 转载自http://www.cnblogs.com/zyl910/archive/2013/06/02/doxygen_pdf_chinese.html
系统环境——
1) Mac OS X Lion 10.7.5 + MacTeX-2012 。
2) Windows XP SP3 + CTeX 2.9.2.164 。
一、原理解释
doxygen本身并不能直接输出pdf文件,而是生成了latex目录,其中有一个 makefile 文件。若系统中装好了pdflatex,可在latex目录中运行“make”命令来生成pdf文件。
怎样才能装好pdflatex呢?mac平台可安装MacTeX,windows平台可安装CTeX。
环境装好之后,当在latex目录中运行“make”命令来生成pdf文件时会发现——纯英文文档能顺利生成pdf;而含有中文时,不能顺利生成pdf文件。
对于latex排版,doxygen其实已经做了很多准备,比如——源文件是UTF-8编码,并默认使用了utf8 package。理论上是支持多国语言的。
可对于中文来说,还需要加载 CJKutf8 package,并配置好CJK环境。这才能顺利的使用中文。
二、解决方案
具体步骤——
1) 使用docxygen生成文档,注意选上 GENERATE_LATEX 、LATEX_OUTPUT、USE_PDFLATEX(最好还选上 PDF_HYPERLINKS);
2) 用文本编辑器打开docxygen生成的latex目录中的refman.tex。找到“\begin{document}”这一行,将其修改为——
\usepackage{CJKutf8}
\begin{document}
\begin{CJK}{UTF8}{gbsn}
然后再找到“\end{document}”这一行,将其修改为——
\end{CJK}
\end{document}
保存,关闭。
3) 打开终端,使用cd命令进入latex目录,然后执行“make”命令。执行完毕后后,该目录中会出现“refman.pdf”——
我在 mac + MacTeX 环境下make时,能完美生成带书签的pdf。
而在 win + CTeX 环境下make时,其中还会弹出一堆错误(输入r再回车,可忽略后续错误),但是最终还是能够生成中文的pdf,可惜一般不能顺利的构造好书签。