私はコンピュータビジョンの分野におけるプロジェクト、モジュール、ライブラリのコレクション(主にC++で書かれたもの)のドキュメントを準備したいと思っています。そのために、オープンCVドキュメントとご存知のとおりオープンCV2.4.xのドキュメントは以下に基づいていますスフィンクスそれはまさに私が探していた解決策でした。Sphinx の優れた機能は次のとおりです。
- 階層構造意味論的観点からのモジュール。例えばカルマンフィルタの子供です動作分析とオブジェクト追跡モジュール
- あなたは付け加えられます画像そして数学も数式
- かなり良い埋め込み検索エンジン
しかし、OpenCV3.0のC++版は、ドキシゲンなぜか分からない!それほど面白くないからスフィンクス。 私はそれを知っていますドキシゲンコードをコンパイルしてコメントを抽出できる便利な機能です。また、ライブラリ(息をする)は、ドキシゲンそしてスフィンクス。
私の質問は次のとおりです。
- はスフィンクスそしてドキシゲンそれぞれが代替として、または並行して使用できますか?
- しますかドキシゲン前述の特徴を持つスフィンクス?
- どのドキュメントエンジン(スフィンクス、ドキシゲン私の問題には、どちらが適していますか?
ベストアンサー1
この回答は、質問のポイント 2 に対応しています。
はい、doxygen には部分的にそれらの機能があります。
- あなたが持つことができます数式は、ローカルの Latex インストールまたは Javascript レンダリング ライブラリである MathJax を通じてレンダリングできます。Latex と同様に、これらはテキストに「埋め込む」ことも、テキスト フロー内の別のユニットとしてレンダリングすることもできます。
- また、検索エンジン。
- 簡単に画像を含める。
たとえば、次の 2 行は、HTML と LaTeX で生成された出力の両方に同じ画像を追加します。
\image latex my_image.png "My image" width=10cm
\image html my_image.png "My image" width=10cm
html では、キャプションと幅は無視されると記憶していると思います。しかし、Doxygen は非常に柔軟なので、上記のコマンドでは不十分な場合は、それらを html コードとして追加することもできます。
<img src="my_image.png" ...additional html attributes...>
Doxygenは他にも多くのものをサポートしています通常のHTMLコマンドコメント ブロックに直接含めることができます。
私は Opencv マニュアルの作成以外、Sphinx の経験はありませんが、(日常的に使用している) Doxygen について付け加えると、非常に柔軟性が高いということです。ただし、これが常に最良の選択であるとは限りません。ページが乱雑になる可能性があり、コメントの追加コードが適切に設計されていない場合は、邪魔になる可能性があります。
完全を期すために、doxygenで何ができるかを示す最も良い例の1つは(もちろんDoxygenのウェブサイト以外では)、アイゲンライブラリ見てください。