From 7b0b7ef746ae15df3894847f5b43a29ae20c9599 Mon Sep 17 00:00:00 2001 From: albert-github Date: Wed, 13 Jan 2016 18:35:22 +0100 Subject: [PATCH] PDF generation stops when image with caption is included in a table. In case an image is included in a table and this image has a caption the generation of a PDF stops with the message: ! Misplaced \noalign. \caption ->\noalign \bgroup \@ifnextchar [{\egroup \LT@c@ption \@firstofone ... l.45 \end{longtabu} This problem has in general been described in: http://tex.stackexchange.com/questions/85919/adding-a-caption-to-a-graphic-inside-a-longtable In this patch the suggestion from this reference is implemented by defining \doxyfigcaption and using this where a caption is required. --- src/latexdocvisitor.cpp | 4 ++-- templates/latex/doxygen.sty | 7 +++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/src/latexdocvisitor.cpp b/src/latexdocvisitor.cpp index 5e7278c758..b8c2efe02b 100644 --- a/src/latexdocvisitor.cpp +++ b/src/latexdocvisitor.cpp @@ -114,7 +114,7 @@ static void visitPreStart(FTextStream &t, const bool hasCaption, QCString name, if (hasCaption) { - t << "\n\\caption{"; + t << "\n\\doxyfigcaption{"; } } @@ -947,7 +947,7 @@ void LatexDocVisitor::visitPre(DocHtmlTable *t) if (t->hasCaption()) { DocHtmlCaption *c = t->caption(); - m_t << "\\caption{"; + m_t << "\\doxyfigcaption{"; visitCaption(this, c->children()); m_t << "}"; m_t << "\\label{" << stripPath(c->file()) << "_" << c->anchor() << "}"; diff --git a/templates/latex/doxygen.sty b/templates/latex/doxygen.sty index 3f2187195b..687a1afe22 100644 --- a/templates/latex/doxygen.sty +++ b/templates/latex/doxygen.sty @@ -475,3 +475,10 @@ % Color used for table heading \newcommand{\tableheadbgcolor}{lightgray}% + +% Define caption that is also suitable in a table +\makeatletter +\def\doxyfigcaption{% +\refstepcounter{figure}% +\@dblarg{\@caption{figure}}} +\makeatother