Linux下使用Doxygen生成中文接口文档(PDF版本)

最近开发完成一个小接口模块,需要提供一份文档,由于注释格式遵循的是 Doxygen 的标准,所以打算自动生成一份文档(主要是为了偷懒 )。于是网上搜了一堆的教程,也走了很多弯路,折腾了几个小时,终于生成了一份比较满意的文档。所以记录一下我生成该 pdf 的整个过程,以备以后需要的时候查看。
走的弯路:一开始是在 Windows 下生成的,直接安装,有图形界面,生成 html 格式的文档很方便,但是如果想生成中文版的 PDF 文档,就很难了。所以转向 Linux 系统
如果想在Windows下简单生成文档(非 PDF ),可以参考该篇文章

1. 环境安装

如果想生成中文 pdf 文档,必须要依赖 doxygen 生成的 Latex,然后再转成 PDF。

sudo apt-get install doxygen	//安装doxygen
sudo apt-get install texlive-full	// latex转pdf相关
sudo apt-get install latex-cjk-chinese*		// cjk,中文依赖
sudo apt-get install cjk-latex

至此环境安装完成

2. 需求配置

到工程目录下,打开终端,运行:

doxygen -g doc.dot	// 生成一个配置模板

会在当前目录下,生成一个doc.dot文档,这个就是配置模板。然后打开该文档:

sudo gedit doc.dot

开始配置:(这边只列出常见的几个配置,其他配置看注释修改即可)

# 编码方式
DOXYFILE_ENCODING      = UTF-8
# 工程名(最后在 pdf 首页显示)
PROJECT_NAME           = "project_name"
# 版本号(显示在 pdf 首页)
PROJECT_NUMBER         = "ver:1.0"
# 项目 logo
PROJECT_LOGO           = log.png
# 输出的文档的存放位置(存放在reference文件夹)
OUTPUT_DIRECTORY       = reference
# 文档环境语言(默认是English, Chinese-Traditional是中文繁体)
OUTPUT_LANGUAGE        = Chinese
# 选择程序的语言类型(在需要的语言那边设置为 YES,不需要的设置为 NO)
#可以设置的语言有:C、JAVA、FORTRAN、VHDL....
OPTIMIZE_OUTPUT_FOR_C  = YES
OPTIMIZE_OUTPUT_JAVA   = NO
# 选择输入的程序地址(我选择的是在当前工程的目录下面,doc.dot 也在同一个目录下)
INPUT                  = ./
#指定处理目录下的文件类型,默认会去搜索典型的c文件,也可以自行指定,格式如下
FILE_PATTERNS          = *.c \
						 *.h
# 是否递归遍历该目录下的所有文件(默认是NO,一般都要设置为YES)
RECURSIVE              = YES
# 是否生成 Latex,默认是NO`在这里插入代码片` (如果要生成 pdf,就一定要选择是)
GENERATE_LATEX         = YES
# 是否生成 HTML,默认是NO
GENERATE_HTML          = YES

3.运行查看

将文件保存后,运行:

doxygen doc.dot

就能看到在reference(你指定的 OUTPUT_DIRECTORY )目录下的文档,如果你既配置了 Latex 又默认了 HTML,那么就有两个文件夹。点击 Latex–refman.tex,修改其中的语句使之能够使用 CJKutf8 的包。

\begin{
     document}
...
...
\end{
     document}

修改为:

\usepackage{
     CJKutf8}
\begin{
     document}
\begin{
     CJK}{
     UTF8}{
     gbsn}
...
...
\end{
     CJK}
\end{
     document}

最后,在 Latex 的文件夹下,打开终端,运行make即可生成 refman.pdf 的文档,就是需要的 PDF文档。(Doxygen真的太了)

你可能感兴趣的:(编辑器)