Doxygen安装、中文PDF输出全攻略(Linux + MacOS)

来源:互联网 发布:二次解析接口源码 编辑:程序博客网 时间:2024/05/17 05:12

假如编程易懂得,那么程序员就不会热情地写出注释,也不会有得到编程的快乐。
对了,程序员一般会热情的写出注释,但大多不愿去写API文档,因为从中得不到快乐 :D
但 API 文档是一个服务框架的脸,框架再牛逼,脸长的丑也是枉然,这是一个看颜值的时代。
还好,业界大牛早就为这个问题找到了几乎完美的解决方案: Doxygen 。

Doxygen 是做啥的就不用多说了,简而言之,它是一款工具,在程序员热情的写好注释之后,能帮助程序员自动生成排版优美,格式多样的 API 文档。当然,你的注释得遵循它的语法,语法规则可以从它的帮助文档中学习。Doxygen 的帮助文档由 Doxygen 自己生成,很酷。好,进入正题:1. linux 下 Doxygen 安装: a. 下载源码安装包或者二进制安装文件: http://www.stack.nl/~dimitri/doxygen/download.html b. 以源码安装为例:      i) tar -zxvf doxygen-${VERSION}.src.tar.gz      ii)  cd doxygen-${VERSION}      iii) mkdir build      iv) cd build       v) cmake -G "Unix Makefiles" ..      vi) make      vII) sudo cp ./bin/doxygen /usr/local/bin
  1. Doxygen 配置文件:
    doxygen -g 即生成了默认的配置文件(Doxyfile),配置项是 key = value 的形式,每一项都有具体的注释,平常主要用到:
    PROJECT_NAME = my_list #项目名称,将作为于所生成的程序文档首页标题
    DOXYFILE_ENCODING =UTF-8 #文件编码格式,可选UTF-8/GB2312

文档版本号,可对应于项目版本号,譬如 svn、cvs 所生成的项目版本号

PROJECT_NUMBER = “1.0.0”

程序文档输出目录

OUTPUT_DIRECTORY = “doc/”

程序文档语言环境,可选项:Chinese/English

OUTPUT_LANGUAGE = Chinese

如果是制作 C 程序文档,该选项必须设为 YES,否则默认生成 C++ 文档格式

OPTIMIZE_OUTPUT_FOR_C = YES

对于使用 typedef 定义的结构体、枚举、联合等数据类型,只按照 typedef 定义的类型名进行文档化

TYPEDEF_HIDES_STRUCT = YES

在 C++ 程序文档中,该值可以设置为 NO,而在 C 程序文档中,由于 C 语言没有所谓的域/名字空间这样的概念,

所以此处设置为 YES
HIDE_SCOPE_NAMES = YES

让 doxygen 静悄悄地为你生成文档,只有出现警告或错误时,才在终端输出提示信息

QUIET = YES

输入文件编码,即您生成的代码时使用的文件编码,可选:UTF-8/GB2312

INPUT_ENCODING =UTF-8

只对头文件中的文档化信息生成程序文档

FILE_PATTERNS = *.h

递归遍历当前目录的子目录,寻找被文档化的程序源文件

RECURSIVE = YES

允许程序文档中显示本文档化的函数相互调用关系

REFERENCED_BY_RELATION = YES
REFERENCES_RELATION = YES
REFERENCES_LINK_SOURCE = YES

***最后,用于生成 PDF 文件要用到的配置项: GENERATE_LATEX 、LATEX_OUTPUT、USE_PDFLATEX、PDF_HYPERLINKS全设置成 yes***
  1. 运行 doxygen,将在你指定的 OUTPUT_DIRECTORY 下生成 API 文档,默认会生成 html 目录,如果设置了 GENERATE_LATEX ,将生成 latex 目录,这个就是我们要用来生成 PDF 文件的目录。

  2. 到这里 doxygen 相关的安装和配置都搞定了,但是还不能生成 PDF 文件,我们需要安装 latex、texlive、cjk等等一系列东西,还好,有个万能的安装程序帮我们解决这一切,傻瓜式的安装好我们所有想要的东西:https://www.tug.org/texlive/acquire-netinstall.html
    i) 下载 install-tl-unx.tar.gz
    ii) 安装后会生成 install-tl 可执行文件,运行,安装 teX

  3. 到这里,我们可以很好的生成 PDF 文件了,但是还需要配置对中文的支持:
    i) 修改第三步 latex 目录下的 refman.tex 文件:
    sed -i -e ‘s,begin{document},usepackage{CJKutf8}\n\begin{document}\n\begin{CJK}{UTF8}{gbsn},’ refman.tex

       sed -i -e 's,end{document},end{CJK}\n\\end{document},' refman.tex
  4. 最后一步了,在 latex 目录下执行 make,即生成了你的 PDF 格式的 API 文档: refman.pdf

********************************分割线***************************
1. mac 下 Doxygen 安装: 如果用源码安装,安装步骤同上
2. mac 下 MacTeX 安装: http://www.tug.org/mactex/
3. mac 下修改 refman.tex 文件:

sed -i '' 's,begin{document},usepackage{CJKutf8}\'$'\n\\\\begin{document}\'$'\n\\\\begin{CJK}{UTF8}{gbsn},'  refman.texsed -i '' 's,end{document},end{CJK}\'$'\n\\\\end{document},' refman.tex

4.其他步骤和配置同上

0 0
原创粉丝点击