What are the main differences of Sphinx and Doxygen? [closed]

This answer addresses point 2 of your question.

Yes, doxygen partly has those features.

  • You can have math formulas, that can be rendered either through a local Latex install, or through MathJax, a Javascript rendering library. As with Latex, these can be either “embedded” into text, or as a separate unit in the text flow.
  • It also includes a search engine.
  • You can easily include images.

For example, the two lines below will add the same image both in html and latex generated output:

  \image latex my_image.png "My image" width=10cm
  \image html my_image.png "My image" width=10cm

I think I recall that in html, caption and width are ignored ? But Doxygen is really flexible, so if the command above isn’t enough, you can just add them as html code:

<img src="https://stackoverflow.com/questions/31571849/my_image.png"  ...additional html attributes...>

Doxygen supports also a lot of regular html commands that you can directly include in your comment block.

I have no experience with Sphinx other than building Opencv manual, but what I can add about Doxygen (that I use on a day to day basis) is that it is really flexible, but this doesn’t mean it’s always the best choice. Pages can get cluttered and if the comment additional code is badly designed, it can get in your way.

For completeness, one the best showcases of what doxygen can do (besides the Doxygen web site of course), is the Eigen library. Take a look.

Leave a Comment