PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Programmierung: Seitenzahl der Figure nur schreiben, wenn nicht auf selber Seite



sharpType
06-08-2009, 16:39
Hallo Profis,

ich habe (für mich jedenfalls) ein sehr schwierig zu lösendes Problem. Also um genau zu sein, ICH kann es nicht lösen und finde dazu auch keine Informationen im WEB!

Folgendes Problem:

Ich zitiere meine Tabellen, Bilder etc. mit folgendem Code:



\newcommand{\myref}[1]{\autoref{#1}~[S. \pageref{#1}]}


und dann im Text mit \myref{bla:bla2}. Dann erscheint sowas wie laut Tabelle 4.2 [S. 4].

Funktioniert alles super, nur blöd ist es, wenn die Abbildung zufällig genau auf der selben Seite ist. Dann finde ich die Seitenangabe recht unpassend.

Daher: Ist es möglich und wenn ja wie, diesen Code so zu ändern, dass die Seite in eckigen Klammern nur mit angegeben wird, wenn die Tabelle/Bild etc. NICHT auf der selben Seite wie das Zitat(\myref....) ist?

Vielen vielen dank

krihaa
06-08-2009, 17:27
Hi,

schau dir mal das Paket varioref (http://www.ctan.org/tex-archive/help/Catalogue/entries/varioref.html) an. Das macht genau das was du möchtest.

Gruß

sharpType
06-08-2009, 17:29
supercool danke :)

irgendwie gibt es bei lateX ja für echt alles eine lösung....fein

sharpType
06-08-2009, 17:51
Allerdings ein Problem:

Ich habe \autoref benutzt für mein gesamtes Dokument und jetzt benötigte ich den Namen der Umgebung bzw des Abschnittes den Autoref mit erzeugt hat zb:

Tabelle, Abbildung, Unterabschnitt, Kapitel vor der Referenz...

kommt man da irgendwie ran?

krihaa
06-08-2009, 21:22
Hi,

ich hoffe, ich habe es richtig verstanden. Du willst nur \vref{tab:irgendwas} schreiben und dann erscheint im Text z.B. "Tabelle 1.1" mit kompletter Verlinkung? Dann schau mal in der Doku von varioref nach \labelformat im Abschnitt 2.3.

Gruß