
In einem KOMA-Script-Report möchte ich einen benutzerdefinierten Float für Algorithmen verwenden und eine algorithmic
-Umgebung mit einer Überschrift direkt daneben anzeigen, anstatt darunter. Abgesehen davon, dass ich die algorithmic
in ein einschließen muss parbox
, um Compilerfehler zu vermeiden, captionbeside
gibt es ein Problem mit float
-Floats:
\documentclass{scrreprt}
\usepackage{float}
\floatstyle{plain}
\newfloat{myfigure}{t}{myfigure}
\begin{document}
% Works as expected: Left & Right on same line.
\begin{figure}
\begin{captionbeside}{Right}Left\end{captionbeside}
\end{figure}
% Doesn't work: Left on one line, Right below
\begin{myfigure}
\begin{captionbeside}{Right}Left\end{captionbeside}
\end{myfigure}
\end{document}
Was ist der Unterschied zwischen integrierten Floats und float
Floats? Wie kann ich figure
für alles das -ähnliche Ergebnis erhalten?
Antwort1
MitKOMA-ScriptEs ist kein zusätzliches Paket erforderlich, um neue schwebende Umgebungen zu definieren, da es über einen eigenen Mechanismus verfügt:
\documentclass{scrreprt}
\DeclareNewTOC[
type=myfigure,
types=myfigures,
float,
floatpos=t,
name=My Figure,
listname={List of my Figures},
counterwithin=chapter
]{lomf}
\begin{document}
\chapter{foo}
\begin{figure}[h]% positioning parameter just for the example
\begin{captionbeside}{Right}Left\end{captionbeside}
\end{figure}
\begin{myfigure}[h]% positioning parameter just for the example
\begin{captionbeside}{Right}Left\end{captionbeside}
\end{myfigure}
\end{document}
Der Befehl \DeclareNewTOC
und seine Optionen werden erklärt inscrguien.pdfAbschnitt 13.5.
Antwort2
Das float
Paket scheint leichte Inkompatibilitäten mit vielen anderen Paketen und Klassen einzuführen. Ihr Beispiel funktioniert wie vorgesehen mit demnewfloat
Paket.
\documentclass{scrreprt}
\usepackage{newfloat}
\DeclareFloatingEnvironment[placement=t]{myfigure}
\begin{document}
\chapter{foo}
\begin{figure}[h]% positioning parameter just for the example
\begin{captionbeside}{Right}Left\end{captionbeside}
\end{figure}
\begin{myfigure}[h]% positioning parameter just for the example
\begin{captionbeside}{Right}Left\end{captionbeside}
\end{myfigure}
\end{document}