PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Latex Zähler - Unklar



Sebastian1234
29-07-2007, 06:58
Hallo,

mein erster Beitrag :)!

Ich habe mir eine kleine Karteikartenumgebung - in Vebindung mit "fancyhdr" gebastelt:



\newenvironment{kartei}[1]{\lhead{\textbf{\citeauthor{#1}
(\citeyear{#1})}} \rhead{\thepage}
\fbox{\parbox[t]{17cm}{\fullcite{#1}}}}
{\newpage}

Der Befehl \fullcite kommt aus dem "jurabib" Packet - man könnte auch \bibentry (in Verb. mit dem "bibentry" Packet) nehmen für einen anderen Literaturstyle.

So was ich nun nicht hinbekomme ist das oben links steht "S. 3 von 4"
und das für jede Karteikarte. Also fängt die Umgebung neu an wird neu gezählt...

Ich brauche also einen Zähler der immer wieder neu anfängt und irgendwie
einen Zähler der immer das Ende der jeweiligen Kartei bestimmt - lastpage? -

:confused:

Danke
Grüße

edico
29-07-2007, 14:45
... und ich empfehle folgende Erweiterung:

...
\usepackage{calc}
...
\newenvironment{kartei}[1]%
{\lhead{\textbf{\citeauthor{#1}%
(\citeyear{#1})}}\rhead{\thepage{} von \pageref{LastPage}}%
\noindent\fbox{\parbox[t]{\columnwidth-2\fboxsep}{\fullcite{#1}}}}%
{\newpage}
...

edico

Sebastian1234
30-07-2007, 20:59
Hallo,

Danke!

Habs kopiert und neben calc auch noch lastpage geladen.
Jedoch wird aktuell durchgezählt von der ersten bis zur letzen
Seite. Es soll aber nach dem Ende der Umgebung von vorn begonnen
werden - da habe ich jetzt das ergänzt (Ende der Umgebung):
...
{\newpage \setcounter{page}{1}}
...

Desweiteren soll auch nur die maximale Anzahl der Seiten einer Kartei
angezeigt werden nach "von" - also nicht die Gesamtseitenanzahl des Dokuments.

Mit der Ergänzung oben bekomme ich Fehlermeldungen wegen der Nutzung eines gleichen Identifiers:

"destination with the same identifier (name{page.1}) has been already used, duplicate ignored\penaltyl.96 \end{kartei}[1]"

Wahrscheinlich weil Lastpage sich ebenfalls auf den Counter Page bezieht oder?

Grüße
Sebastian1234

PS: Danke für die restliche Frisur meines Code-Schnipsels :D

edico
31-07-2007, 08:40
Ich hatte nicht bis zu Ende gelesen ...

Du brauchst also einen Zähler, der immer wieder neu anfängt und wohl auch das Ende der jeweiligen Kartei bestimmt.

Da kann ich Dir nicht helfen. Es gibt (auf dctt?) einen Thread, der sich mit einem Fortschrittsbalken befasst und (sectionsweise?) zählt. Vielleicht kannst Du das verwerten?

Als schlicht gestrickter User würde ich jede Karteikarte als eigenständiges Dokument erstellen und alle Dateikarten mit pdfpages zum Sample zusammenfügen ;-)

... aber vielleicht verstehe ich Dein Problem auch nicht.

edico

sommerfee
31-07-2007, 09:29
Mit der Ergänzung oben bekomme ich Fehlermeldungen wegen der Nutzung eines gleichen Identifiers:

"destination with the same identifier (name{page.1}) has been already used, duplicate ignored\penaltyl.96 \end{kartei}[1]"

Wahrscheinlich weil Lastpage sich ebenfalls auf den Counter Page bezieht oder?

Es bezieht sich so einiges auf den Zähler "page". Wenn du also derart in diesen Zähler eingreift und auch hyperref benutzen möchtest, bleiben 2 Möglichkeiten, um die Warnungen zu unterdrücken und die Hyperlinks immer auf die richtige Seite weisen zu lassen:

Entweder: \theHpage so umdefinieren, daß es immer ein eindeutig Ergebnis liefert.

Oder: hyperref mit der Option "hypertexnames=false" laden.

Näheres dazu findet man in der hyperref-Dokumentation.

Liebe Grüße,
Axel

Sebastian1234
31-07-2007, 19:18
Hallo,

doch edico du hast das schon verstanden und ich mach
das jetzt auch erstmal einzelne Dokumente... geht auch...

Ich such mal den Thread und evt. klappt das ja irgendwann.

Danke sommerfee deine Tips probiere ich aus!

Grüße
Sebastian1234

edico
01-08-2007, 01:52
... und ich mach
das jetzt auch erstmal einzelne Dokumente... geht auch...


Kannst Du Deinen Code mal bitte in einem MB posten.

Bei page funktioniert nicht alles, wie erwartet. Das Problem wird dahingehend beschrieben, dass es mit der asynchronen Output-Routine zusammenhängt. page wird erst dann erhöht, wenn eine Seite ausgegeben wird.

Das Paket perpage, evtl. zref-perpage (alles Heiko Oberdiek), scheint ggf. ein Ansatz zu sein:
... adds the ability to reset counters per page ...

edico