(转)Doxygen文档生成工具
http://blog.csdn.net/lostaway/article/details/6446786
Doxygen 是一个支持 C/C++,以及其它多种语言的跨平台文档生成工具。如同 JavaDoc, doxygen 直接从源文件中提取符合 doxygen 注释规范的注释,生成文档[1]。
1、安装
1.1 安装 Doxygen 1.7.4(Windows)
地址:ftp://ftp.stack.nl/pub/users/dimitri/doxygen-1.7.4.windows.bin.zip
1.2 安装 graphviz 2.28.0(Windows)
地址:http://www.graphviz.org/pub/graphviz/stable/windows/graphviz-2.28.0.msi
graphviz 是一个由AT&T实验室启动的开源工具包,用于绘制DOT语言脚本描述的图形[2]。Doxygen 使用 graphviz 自动生成类之间和文件之间的调用关系图,如不需要此功能可不安装该工具包。
1.3 安装 Windows Help Workshop 1.32
地址:http://download.microsoft.com/download/0/a/9/0a939ef6-e31c-430f-a3df-dfae7960d564/htmlhelp.exe
这个工具就不多说了,生成 CHM 帮助文档的。 Doxygen 使用它生成 CHM 格式的文档。
2、配置
运行 Doxywizard 开始配置
Doxygen 1.7.4 主界面如下图 1 所示。
说明:
Doxygen 工作目录(1:) 就是用来存放配置文件的目录,别无它用。
选择 wizard 标签下的 Output Topics
相关配置说明如下图 2 所示。
选择 wizard 标签下的 Diagrams Topics
相关配置说明如下图 3 所示。
如果之前安装了 Graphviz 工具包,就可启用该选项。
选择 expert 标签下的 Project Topics
相关配置说明如下图 4 所示。
说明:编码格式,UTF-8 是首选。
选择 expert 标签下的 Input Topics
相关配置说明如下图 5 所示。
说明:
输入的源文件的编码,要与源文件的编码格式相同。如果源文件不是UTF-8编码最好转一下。
选择 expert 标签下的 HTML Topics
相关配置说明如下图 6 所示。
说明:
如果在 Wizard 的 Output Topics 中选择了 prepare for compressed HTML (.chm)选项,此处就会要求选择 hhc.exe 程序的位置。在 windows help workshop 安装目录下可以找到 hhc.exe。
在 Expert 标签中还有超多的选项,需要按自己的要求去定制。个人喜好问题就不再赘述了,大家可以查 doxygen 文档啥的,里面有每个选项的详细介绍。
选择 Run 标签
相关配置说明如下图 7 所示。
点击 Run doxygen 按钮, Doxygen 就会从源代码中抓取符合规范的注释生成你定制的格式的文档。接下来的工作就是学习 doxygen 的注释规范了,参考 《doxygen 快速入门》第 2 节 “常用注释语法”。慢慢的就可以体会到 doxygen 的方便性。
Doxygen 生成 CHM 文档乱码的问题
由于 Windows 的默认编码不是 UTF-8, Doxygen 生成的 CHM文件目录和文件标题栏是乱码。一般解决步骤可以参考《doxygen 快速入门》关于解决目录乱码的问题。这里要补充的一点就是,最好将 index.hhc、index.hhk 、index.hhp都转为 UTF-8格式。这样标题栏啥的也不会是乱码了。
参考
[1] http://zh.wikipedia.org/wiki/Doxygen Wikipedia-doxygen
[2] http://zh.wikipedia.org/wiki/Graphviz Wikipedia-graphviz
[3] http://hi.baidu.com/soulmachine/blog/item/6055ad017a9a1606738da58c.html doxygen 快速入门
附录
补充几张效果图:
(转)Doxygen文档生成工具的更多相关文章
- 文档生成工具doxygen+图像生成工具GraphViz
文档生成工具doxygen+图像生成工具GraphViz 虽然jdk自带的javadoc也很好用,不过使用doxygen+GraphViz 的组合可以生成许多强大的图(类图.协作图.文件包含/被包含图 ...
- Doxygen自动文档生成工具在Eclipse中的集成及使用举例
你有为软件编写说明文档的苦恼吗?当别人甩给你一个庞大的系统,让你根据里面的代码注释理解后写出一份完整的开发文档,你会怎么办?一个个的看代码 然后耗时N天来写吗?这既是一份苦差事也极其耗时,有没有更好的 ...
- 使用Objective-C的文档生成工具:appledoc
使用Objective-C的文档生成工具:appledoc 前言 做项目的人多了,就需要文档了.今天开始尝试写一些项目文档.但是就源代码来说,文档最好和源码在一起,这样更新起来更加方便和顺手.象 Ja ...
- 使用Objective-C的文档生成工具
前言 做项目的人多了,就需要文档了.今天开始尝试写一些项目文档.但是就源代码来说,文档最好和源码在一起,这样更新起来更加方便和顺手.象Java语言本身就自带javadoc命令,可以从源码中抽取文档.今 ...
- 【C#附源码】数据库文档生成工具支持(Excel+Html)
[2015] 很多时候,我们在生成数据库文档时,使用某些工具,可效果总不理想,不是内容不详细,就是表现效果一般般.很多还是word.html的.看着真是别扭.本人习惯用Excel,所以闲暇时,就简单的 ...
- 微软开源全新的文档生成工具DocFX
微软放弃Sandcastle有些年头了,微软最近开源了全新的文档生成工具DocFX,目前支持C#和VB,类似JSDoc或Sphinx,可以从源代码中提取注释生成文档之外,而且还有语法支持你加入其他的文 ...
- DBImport v3.44 中文版发布:数据库数据互导及文档生成工具(IT人员必备)
前言: 距离上一个版本V3.3版本的文章发布,已经是1年10个月前的事了. 其实版本一直在更新,但也没什么大的功能更新,总体比较稳定,所以也不怎么写文介绍了. 至于工作上的事,之前有半年时间跑去学英语 ...
- .NET平台开源项目速览(4).NET文档生成工具ADB及使用
很久以前就使用ADB这个工具来生成项目的帮助文档.功能强大,在学习一些开源项目的过程中,官方没有提供CHM帮助文档,所以为了快速的了解项目结构和注释.就生成文档来自己看,非常好用.这也是一个学习方法吧 ...
- Sandcastle----强大的C#文档生成工具
最近客户索要产品的二次开发类库文档,由于开发过程中并没有考虑过此类文档,而且项目规范比较,持续时间比较长,经手人比较多,还真是麻烦,如果人工制作文档需要是一个比较大的工程.还好有这个文档生成工具,能够 ...
随机推荐
- Using Nuget in Visual Studio 2005 & 2008
NuGet is a Visual Studio extension that makes it easy to install and update third-party libraries an ...
- NetCore 阿里大于发送短信
使用阿里大于API发送短信,但阿里没有提供NetCore 的API,自己看了下源码重写了发短信这个部分 public class MessageSender { private readonly st ...
- Redis修改数据多线程并发—Redis并发锁
本文版权归博客园和作者本人吴双共同所有 .转载爬虫请注明地址,博客园蜗牛 http://www.cnblogs.com/tdws/p/5712835.html 蜗牛Redis系列文章目录http:// ...
- 基于python编写的天气抓取程序
以前一直使用中国天气网的天气预报组件都挺好,可是自从他们升级组件后数据加载变得非常不稳定,因为JS的阻塞常常导致网站打开速度很慢.为了解决这个问题决定现学现用python编写一个抓取程序,每天定时抓取 ...
- jquery制作论坛或社交网站的每天打卡签到特效
效果:http://hovertree.com/texiao/jquery/50/ 现在许多社区,购物等网站都设置签到功能,打开可以收获经验.虚拟币等,提高用户粘性,增加浏览量,是一个不错的功能.本文 ...
- Objective-c的@property(atomic,nonatomic,readonly,readwrite,assign,retain,copy,getter,setter) 属性特性
assign:指定setter方法用简单的赋值,这是默认操作.你可以对标量类型(如int)使用这个属性.你可以想象一个float,它不是一个对象,所以它不能retain.copy. retain:指定 ...
- 【工业串口和网络软件通讯平台(SuperIO)教程】五.二次开发图形显示界面
SuperIO相关资料下载:http://pan.baidu.com/s/1pJ7lZWf 1.1 图形显示接口的作用 用于显示采集终端设备的数据,可以把不同类型设备的数据以多种形式集成显示在不 ...
- 使用MyEclipse 开发struts2框架结构详细教程——以登录为例
1.首先建立Web Project,名称为:struts2 ,然后选择Java EE6.0,点击Finish. 2.右击“struts”选择MyEclipse->Add Struts Capab ...
- Quartz.net配置文件实例及cron表达式详解
从XML文件创建作业 最新版本的quartz.net支持直接从xml文件创建作业,使用起来很方便.配置文件的格式可以参考下面的例子 <?xml version="1.0" e ...
- Put your application in production
Here some simple tips to optimize your application for production. Configure your application.conf F ...