Übersehe ich etwas Offensichtliches, oder sollte es \captionof
in einem nicht funktionieren ? Ich habe unter anderem , , \makebox
ausprobiert .\protect
\MakeRobustCommand
\documentclass{article}
\usepackage{capt-of}
\begin{document}
\makebox{\captionof{figure}{X}}
\end{document}
Ich erhalte diesen Fehler:
! Missing \endgroup inserted.
<inserted text>
\endgroup
l.4 \makebox{\captionof{figure}{X}}
Antwort1
\makebox
stellt eine horizontale Box für Inhalte bereit und hat daher Schwierigkeiten mit vertikalen Inhalten. Insbesondere \captionof
Aufrufe \@makecaption
zum Festlegen der tatsächlichen Überschrift. Dies beginnt und endet mit vertikalen Sprüngen, die über \vskip \abovecaptionskip
und eingefügt werden \vskip \belowcaptionskip
. \vskip
s innerhalb eines \makebox
verursacht das Problem:
\hrulefill
\mbox{\vspace{10pt}}% Acceptable...
\hrulefill
\mbox{\vskip 10pt}% Problematic...
\hrulefill
Der obige Codeausschnitt hebt die im Hintergrund ausgeführte Kleinarbeit hervor, \vspace
die zum Überspringen im nicht vertikalen Modus erforderlich ist.
Auf der anderen Seite bieten \parbox
(und minipage
beispielsweise) die Möglichkeit, horizontaleUndvertikaler Inhalt. Wenn Sie es also in eine Box einfügen möchten \captionof
, platzieren Sie es in einer Box, die ihren Inhalt verwalten kann, wie z . B. eine \parbox
.