PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Seitenverweis im Format "23f." oder "45ff."



Gummibaer
29-04-2011, 14:53
Hallo zusammen,
weiß jemand von Euch, wie man möglichst einfach einen Seitenverweis erzeugen kann, der falls erforderlich automatisch "f." für die folgende oder "ff." für mehrere folgende Seiten an die Seitenzahl ranhängt?

Ich habe mir vorgestellt, die Textpassage, auf die ich verweisen will, am Anfang und am Ende mit \label zu markieren. Etwa in folgender Form:

\phantomsection \label{Anfang_Text}
Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text
Text Text Text Text Text Text Text Text Text
\phantomsection \label{Ende_Text}

Abhängig von den Seitenzahlen der beiden labels müsste der Verweis entsprechend generiert werden, aber ich habe leider keine Ahnung, wie das geschehen soll.

Für Ideen wäre ich sehr dankbar.

Viele Grüße
Gummibaer

rais
30-04-2011, 19:00
etwa so


\documentclass{article}
\usepackage[ngerman]{babel}
\usepackage{blindtext,refcount}
\newcounter{phantom}
\newcounter{mystart}
\newcounter{mystop}
\newcommand*\myrangeref[2]{%
\setcounterpageref{mystart}{#1}%
\setcounterpageref{mystop}{#2}%
\ifnum\value{mystop}<\value{mystart}%
\typeout{[myrangeref] Strange...stop (#2) before start (#1).}%
\pageref{#2}--\pageref{#1}%
\else
\pageref{#1}%
\ifnum\value{mystart}<\value{mystop}%
\addtocounter{mystop}{-1}%
\ifnum\value{mystart}<\value{mystop}%
ff.%
\else
f.%
\fi
\fi
\fi
}
\newcommand*\mylabel[1]{%
\refstepcounter{phantom}%
\label{#1}%
}
\begin{document}
\mylabel{Anfang_Text}
\blindtext[10]
\mylabel{Ende_Text}

Seite(n): \myrangeref{Anfang_Text}{Ende_Text}
\end{document}

MfG

Stefan_K
30-04-2011, 20:56
Hallo,

Du könntest auch das Paket varioref (http://ctan.org/pkg/varioref) und \vpagerefrange anschauen, ob diese Form der Referenzierung von Seitenbereichen sich für Dich eignet.

Viele Grüße,

Stefan

Gummibaer
03-05-2011, 10:17
Hallo Ihr beiden freundlichen Helfer,

ich habe mir beide empfohlenen Möglichkeiten angesehen und den Code von rais in meinem Werk eingebaut. Nach einer Recherche habe ich festgestellt dass hinter die Seitenzahl noch ein Leerzeichen gehört (das habe ich in meiner Überschrift im Forum vergessen). Daher habe ich vor dem "f." und dem "ff." noch ein kurzes Leerzeichen "\," eingefügt. Funktioniert echt prima.

Das varioref-Paket habe ich mir auch mal angeschaut und finde es sehr interessant. Macht zwar in diesem Fall nicht genau das, was ich gesucht habe, aber ich werde es an anderen Stellen sehr gut verwenden können.

Daher vielen vielen Dank für Euer Hilfe.

Mit freundlichen Grüßen
Gummibaer