Why not PDF documentation?
Added by Vincenzo Romano over 7 years ago
I wonder how comples would it be to have a "make pdfdocs" in order to collect all the documentation in a single PDF (with internal links).
It'd be much more handy than a full tree of HTML, GIFs and the likes.
Any idea?
Replies (11)
RE: Why not PDF documentation? - Added by Roel Standaert over 7 years ago
You can actually modify Doxyfile so that Doxygen generates LaTeX. For example, you could set GENERATE_LATEX
to YES
, PDF_HYPERLINKS
to YES
, and USE_PDFLATEX
to YES
. Then, you can run make doc
followed by make
in doc/reference/latex
, and you'll get a file called refman.pdf
with the reference documentation in PDF form.
Regards,
Roel
RE: Why not PDF documentation? - Added by Vincenzo Romano over 7 years ago
It'd be nice to have the LaTex check in the cmake and a subsequent extra make pdfdoc
.
Thanks for the hint, thouhg.
RE: Why not PDF documentation? - Added by Vincenzo Romano over 7 years ago
I followed your directions, installed a few missing bits like pdflatex
and qt4-dev-tools
(why?).
Still it doesn't produce the PDF output.
The amount of output is very large, but I have found that something called "founddot" hasn't been found.
I have no clue about it and so my package manager (Ubuntu).
Any further hint?
RE: Why not PDF documentation? - Added by Vincenzo Romano over 7 years ago
My bad!
The error message is confusing:
Generating docs for nesh: 1: sh: 1: dot: not founddot: not found
The actual missing bit is "dot" from graphviz
!
Now I've fixed also that but the final result is a crowd of small PDF files.
There's no refman.pdf
and, as far as I can see, no other error.
P.S.
I think that "make doc" should fail at the very first error, like a missing executable.
RE: Why not PDF documentation? - Added by Vincenzo Romano over 7 years ago
The small PDFs are "just" the inheritance graphs.
RE: Why not PDF documentation? - Added by Roel Standaert over 7 years ago
I don't know to what extent we can control what doxygen does when it encounters a problem. Same thing with your proposal to add make pdfdoc
: I think the only way to do that would be to either generate the Doxyfile
or provide multiple Doxyfile
s. I personally don't like the PDF form of the documentation as doxygen generates it enough to want to add that option.
So you changed the Doxyfile
like in the patch file I attached? In that case make doc
should generate a folder doc/reference/latex
. You have to go to this folder and run make
there to generate refman.pdf
.
Our Doxyfile
is configured to generate a .qch
(Qt Compressed Help) file, that's why you need qt4-dev-tools
. You can turn that off by setting GENERATE_QHP
to NO
.
Regards,
Roel
doxyfile.patch (1.08 KB) doxyfile.patch |
RE: Why not PDF documentation? - Added by Vincenzo Romano over 7 years ago
I did the changes are required earlier.
I re-run the cmake (just in case) and then both make
and make doc
.
The directory doc/reference/latex has been created and filled with tex and pdf files.
But the pdf files are just the class hierarchy graphs, not the manual.
There's no refman.pdf in any project subdirectory and, it seems, no error during the make doc
.
RE: Why not PDF documentation? - Added by Roel Standaert over 7 years ago
You have to run make
in the doc/reference/latex
folder to generate refman.pdf
.
Regards,
Roel
RE: Why not PDF documentation? - Added by Vincenzo Romano over 7 years ago
rm -f *.ps *.dvi *.aux *.toc *.idx *.ind *.ilg *.log *.out *.brf *.blg *.bbl refman.pdf
pdflatex refman
This is pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015/Debian) (preloaded format=pdflatex)
restricted \write18 enabled.
entering extended mode
(./refman.tex
LaTeX2e <2016/02/01>
Babel <3.9q> and hyphenation patterns for 3 language(s) loaded.
(/usr/share/texlive/texmf-dist/tex/latex/base/book.cls
Document Class: book 2014/09/29 v1.4h Standard LaTeX document class
(/usr/share/texlive/texmf-dist/tex/latex/base/bk10.clo))
(/usr/share/texlive/texmf-dist/tex/latex/base/fixltx2e.sty
Package fixltx2e Warning: fixltx2e is not required with releases after 2015
(fixltx2e) All fixes are now in the LaTeX kernel.
(fixltx2e) See the latexrelease package for details.
) (/usr/share/texlive/texmf-dist/tex/latex/tools/calc.sty) (./doxygen.sty
(/usr/share/texlive/texmf-dist/tex/latex/base/alltt.sty)
(/usr/share/texlive/texmf-dist/tex/latex/tools/array.sty)
! LaTeX Error: File `float.sty' not found.
Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: sty)
Enter file name:
At least under Ubuntu 16.04 this seems not enough.
RE: Why not PDF documentation? - Added by Roel Standaert over 7 years ago
That's probably in one of the extra texlive packages, texlive-latex-extra
it seems. If you want to be sure that you have everything, you can also install texlive-full
.
Regards,
Roel
RE: Why not PDF documentation? - Added by Vincenzo Romano over 7 years ago
That worked and now I've my single PDF manual with index and internal links.
I think this is a great tool for people like me that's (slowly) learning about Wt.
The program who created the makefile
under doc/reference/latex
should have checked for the needed prerequisites and dependencies.
The sort order of the class names in the chapter "Class Documentation" (no.14) seems to be random.