aistudy
23-02-2010, 10:37
Hallo,
ich habe mir einen neuen Befehl erstellt der mir im Text den Text "Abb. x S. x" einfügt, falls die Abbildung auf einer anderen Seite ist als der refenzierende Text und nur "Abb. x" falls dieser sich auf der gleichen Seite befindet.
Zunächst hat das ganze auch sehr gut funktioniert, jetzt habe ich jedoch festgestellt, dass falls ein Absatz mit einer Referenz über eine Seite hinaus geht und sich die Referenz auf der zweiten Seite befindet immer noch angenommen wird, es wäre die alte Seite. Ist auf der Seite zunächst ein Floatobjekt welches zum letzten Absatz gehört ist dies genauso.
Dann wird trotzdem "Abb. x S.x" angezeigt obwohl sich das Bild und der Text auf der gleichen Seite befinden.
Ich habe versucht ein Minimalbeispiel zu erstellen bei dem dieses Problem auftritt, leider ist es mir nicht gelungen. Deshalb habe ich ein Bild einer der betreffenden Seiten meines Dokumentes als Anhang angefügt, auf dem zu erkennen ist das am Seitenanfang \thepage immernoch den Wert der letzten Seite hat und dadurch die Bedingung meines Befehls annimmt das Bild sei auf einer anderen Seite als der Text.
Hier der Befehl in dem ich \thepage und \pageref zum vergleichen der Seite verwende:
\newcommand{\picref}[1]{%
(Abb. {\ref{fig:#1}}%
\ifthenelse{\equal{\thepage}{\pageref{fig:#1}}}%Ve rgleich aktuelle Seitenzahl und Seitenzahl der Abbildung
{}%wenn gleich zeige keine Seite an
{ S. {\pageref{fig:#1}}}%wenn ungleich zeige Seite an
)
}
Ist es möglich den Vergleich der Seitenzahl zuverlässiger zu machen um diesen Fehler zu vermeiden?
ich habe mir einen neuen Befehl erstellt der mir im Text den Text "Abb. x S. x" einfügt, falls die Abbildung auf einer anderen Seite ist als der refenzierende Text und nur "Abb. x" falls dieser sich auf der gleichen Seite befindet.
Zunächst hat das ganze auch sehr gut funktioniert, jetzt habe ich jedoch festgestellt, dass falls ein Absatz mit einer Referenz über eine Seite hinaus geht und sich die Referenz auf der zweiten Seite befindet immer noch angenommen wird, es wäre die alte Seite. Ist auf der Seite zunächst ein Floatobjekt welches zum letzten Absatz gehört ist dies genauso.
Dann wird trotzdem "Abb. x S.x" angezeigt obwohl sich das Bild und der Text auf der gleichen Seite befinden.
Ich habe versucht ein Minimalbeispiel zu erstellen bei dem dieses Problem auftritt, leider ist es mir nicht gelungen. Deshalb habe ich ein Bild einer der betreffenden Seiten meines Dokumentes als Anhang angefügt, auf dem zu erkennen ist das am Seitenanfang \thepage immernoch den Wert der letzten Seite hat und dadurch die Bedingung meines Befehls annimmt das Bild sei auf einer anderen Seite als der Text.
Hier der Befehl in dem ich \thepage und \pageref zum vergleichen der Seite verwende:
\newcommand{\picref}[1]{%
(Abb. {\ref{fig:#1}}%
\ifthenelse{\equal{\thepage}{\pageref{fig:#1}}}%Ve rgleich aktuelle Seitenzahl und Seitenzahl der Abbildung
{}%wenn gleich zeige keine Seite an
{ S. {\pageref{fig:#1}}}%wenn ungleich zeige Seite an
)
}
Ist es möglich den Vergleich der Seitenzahl zuverlässiger zu machen um diesen Fehler zu vermeiden?