von Keba » Mi 29. Feb 2012, 13:39
Hallo,
Nein, ein
\newpage hilft nicht, scheinbar liegt es an der von mir verwendeten Umgebung
figure und/oder des Befehls
subfloat. Bei diesem Minimalbeispiel
\documentclass{scrartcl}
% packages
\usepackage{subfig}
\usepackage{graphicx}
\usepackage{etoolbox}
\usepackage{xifthen}
% commands
\newcount\bilderzaehler% zaehlt die eingefuegten Bilder
\newcount\schleifenzaehler% Zaehlvariable in while-Schleife
\bilderzaehler=1% Bilderzaehler auf eins setzen
\newcommand{\bildrein}[1]% Befehl zum einfuegen eines Bildes
{%
\includegraphics[width=0.5\textwidth, height=0.25\textwidth]{#1}% Bild einfuegen
\csgdef{bild\number\bilderzaehler}{bla}% Befehl definieren, um Bild spaeter gross einzufuegen
\advance\bilderzaehler by 1% Bilderzaehler um eins erhoehen
}
\newcommand{\bilderauslesen}% Befehl zum ausgeben der grossen Bilder
{%
\schleifenzaehler=1% Schleifenzaehler auf eins setzen
\advance\bilderzaehler by 1% Bilderzaehler erhoehen fuer Vergleich in Schleife
\whiledo{\number\schleifenzaehler<\number\bilderzaehler}% Schleife zur Ausgabe der Bilder
{%
\csuse{bild\number\schleifenzaehler}% Ausgabe eines Bildes
\advance\schleifenzaehler by 1% Schleifenzaehler um eins erhoehen
}
\advance\bilderzaehler by -1% Bilderzaehler um eins reduzieren (auf alten Stand setzen)
}
% document
\begin{document}
\section{small images}
\begin{figure}[htbp]
\subfloat[1]{\bildrein{foobar}}
\subfloat[2]{\bildrein{foobar}}\\
\subfloat[3]{\bildrein{foobar}}
\subfloat[4]{\bildrein{foobar}}
\caption{foo}
\end{figure}
\section{big images}
\bilderauslesen
\end{document}
… wird im zweiten Abschnitt nur einmal „bla“ ausgegeben, statt der erwarteten vier mal. Außerhalb der
figure funktioniert das ganze wie gewollt.
Ich benötige allerdings
figure, da ich zum einem Bildunterschriften einfügen und zum anderen auf Bilder verweisen möchte.
Wie bringe ich deine Makros nun mit der Umgebung in Einklang?
Vielen Dank schonmal, Keba[/code]
Hallo,
Nein, ein [i]\newpage[/i] hilft nicht, scheinbar liegt es an der von mir verwendeten Umgebung [i]figure[/i] und/oder des Befehls [i]subfloat[/i]. Bei diesem Minimalbeispiel
[code]\documentclass{scrartcl}
% packages
\usepackage{subfig}
\usepackage{graphicx}
\usepackage{etoolbox}
\usepackage{xifthen}
% commands
\newcount\bilderzaehler% zaehlt die eingefuegten Bilder
\newcount\schleifenzaehler% Zaehlvariable in while-Schleife
\bilderzaehler=1% Bilderzaehler auf eins setzen
\newcommand{\bildrein}[1]% Befehl zum einfuegen eines Bildes
{%
\includegraphics[width=0.5\textwidth, height=0.25\textwidth]{#1}% Bild einfuegen
\csgdef{bild\number\bilderzaehler}{bla}% Befehl definieren, um Bild spaeter gross einzufuegen
\advance\bilderzaehler by 1% Bilderzaehler um eins erhoehen
}
\newcommand{\bilderauslesen}% Befehl zum ausgeben der grossen Bilder
{%
\schleifenzaehler=1% Schleifenzaehler auf eins setzen
\advance\bilderzaehler by 1% Bilderzaehler erhoehen fuer Vergleich in Schleife
\whiledo{\number\schleifenzaehler<\number\bilderzaehler}% Schleife zur Ausgabe der Bilder
{%
\csuse{bild\number\schleifenzaehler}% Ausgabe eines Bildes
\advance\schleifenzaehler by 1% Schleifenzaehler um eins erhoehen
}
\advance\bilderzaehler by -1% Bilderzaehler um eins reduzieren (auf alten Stand setzen)
}
% document
\begin{document}
\section{small images}
\begin{figure}[htbp]
\subfloat[1]{\bildrein{foobar}}
\subfloat[2]{\bildrein{foobar}}\\
\subfloat[3]{\bildrein{foobar}}
\subfloat[4]{\bildrein{foobar}}
\caption{foo}
\end{figure}
\section{big images}
\bilderauslesen
\end{document}[/code]
… wird im zweiten Abschnitt nur einmal „bla“ ausgegeben, statt der erwarteten vier mal. Außerhalb der [i]figure[/i] funktioniert das ganze wie gewollt.
Ich benötige allerdings [i]figure[/i], da ich zum einem Bildunterschriften einfügen und zum anderen auf Bilder verweisen möchte.
Wie bringe ich deine Makros nun mit der Umgebung in Einklang? :)
Vielen Dank schonmal, Keba[/code]