博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OpenCASCADE Documentation System
阅读量:5836 次
发布时间:2019-06-18

本文共 1881 字,大约阅读时间需要 6 分钟。

  hot3.png

OpenCASCADE Documentation System

Abstract. Doxygen is the de facto standard tool for generating documentation from annotated C++ sources, but it also supports other popular programming languages. You can also use doxygen for creating normal documentation, as OpenCASCADE did for its references and user’s guide documents. 

Key Words. OpenCASCADE, Doxygen, Documentation System 

1. Introduction

Doxygen基本上已经成了从C++代码生成文档的一个标准工具。OpenCASCADE就利用Doxygen来根据源代码生成References文档,还利用其生成HTML和PDF格式的User Guide文档。使用Doxygen来生成文档,只需要按照一定的格式,就可以自动生成看上去比较专业的文档。 

本文主要对Doxygen用来生成User Guide的方法做一定的介绍。根据代码生成References文档的方法请参考Doxygen的文档说明。 

Figure 1.1 Doxygen GUI 

2. Prerequisites

为了自动生成PDF格式的文档,还需要准备全如下工具: 

v Doxygen 1.8.4版本及以上; 

v Graphviz的Dot,用来生成文档中的类图; 

v MikTeX:用来生成PDF格式的文档; 

v Inkscape:只有当要生成PDF格式中带有SVG格式的图片时需要; 

v MathJax:当生成的HTML或CHM中有数学公式时需要; 

这些工具都可以从网上下载得到。 

3. Markdown Support of Doxygen

Markdown支持是从Doxygen1.8.0开始的,Markdown就是还格式语法的普通文本,由John Gruber编写,其目的是: 

The design goal for Markdown’s formatting syntax is to make it as readable as possible. The idea is that a Markdown-formatted document should be publishable as-is, as plain text, without looking like it’s been marked up with tags or formatting instructions. While Markdown’s syntax has been influenced by several existing text-to-HTML filters, the single biggest source of inspiration for Markdown’s syntax is the format of plain text email. 

当你按照Markdown格式来写文档时,只需要将*.md文件放到文档文件夹中,Doxygen会自动搜索并生成相对应的文档。这里列举几个Markdown的例子。 

3.1 Tables表格

生成表格可以用如下的文本来表示: 

生成的表格样式如下图所示: 

Figure 3.1 Tables in Markdown 

3.2 Code Blocks代码片段

使用~~来隔离代码,若在其带上后缀名,还将根据后缀名来给代码高亮。如下所示为给C++代码着色: 

Figure 3.2 Code blocks in Markdown 

小段代码着色也可用标记@code和@endcode来标记。 

3.3 Images插入图片

插入图片使用如下标记: 

Figure 3.3 OCC logo 

4. Conclusion

使用OCC这种方式来生成文档,感觉还是很不错的。我就使用这种方式生成了程序IsoAlgo的文档,看上比较专业,如下图所示: 

Figure 4.1 IsoAlgo User Guide 

 

PDF Version:

转载于:https://my.oschina.net/eryar/blog/347841

你可能感兴趣的文章
C++关于字符串的处理
查看>>
6、Web Service-拦截器
查看>>
Flask 源码流程,上下文管理
查看>>
Breaking parallel loops in .NET C# using the Stop method z
查看>>
修改故障转移群集心跳时间
查看>>
[轉]redis;mongodb;memcache三者的性能比較
查看>>
微软职位内部推荐-Sr DEV
查看>>
让你的WPF程序在Win7下呈现Win8风格主题
查看>>
802.11 学习笔记
查看>>
Leetcode-Database-176-Second Highest Salary-Easy(转)
查看>>
构建Docker Compose服务堆栈
查看>>
最小角回归 LARS算法包的用法以及模型参数的选择(R语言 )
查看>>
Hadoop生态圈-Kafka常用命令总结
查看>>
如何基于Redis Replication设计并实现Redis-replicator?
查看>>
浮点数内存如何存储的
查看>>
贪吃蛇
查看>>
EventSystem
查看>>
用WINSOCK API实现同步非阻塞方式的网络通讯
查看>>
玩一玩博客,嘿嘿
查看>>
Ubuntu设置python3为默认版本
查看>>