Aktuelle Seitenzahl eingebundener PDF-Seiten ermitteln

Fragen und Probleme, die nicht den obigen Kategorien zugeordnet werden können


IrenaSekuta
Forum-Century
Forum-Century
Beiträge: 230
Registriert: Di 2. Dez 2008, 10:05

Aktuelle Seitenzahl eingebundener PDF-Seiten ermitteln

Beitrag von IrenaSekuta »

Hallo zusammen,

anbei mein Minimalbeispiel, das mein Problem illustrieren soll.
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{pdfpages}
\usepackage[ngerman]{hyperref}

\begin{document}
\chapter{Test}

Hier wird nun auf \hyperlink{dummy.2}{''Seite 2''} der eingebundenen PDF verwiesen. Diese Seite befindet sich auf Seite \pageref{dummy.2} in diesem Dokument.

Und hier nun auf \hyperlink{dummy.4}{''Seite 4''} verwiesen.
Diese Seite befindet sich auf Seite \pageref{dummy.4} in diesem Dokument.

\includepdf[%
	pagecommand={\thispagestyle{plain}},%
	pages=1-,%
	scale=0.8,%
	link=true,%
	linkname=dummy%
]{dummy.pdf}

\end{document}
Der Hyperlink funktioniert auch einwandfrei. Nun möchte ich jedoch für die Druckversion die Seitenzahl anzeigen. Aber wie oben probiert funktioniert es nicht.

Hat jemand eine Idee wie es gehen könnte?

Gruß,

Irena
----------------------------------
- WinXP und Win 7 und ansatzweise Ubuntu 9.10 :-)
- Miktex 2.9 (Portable)
- WinEdt 6

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Es hat ganz schön gedauert, bis ich vermutlich verstanden habe, was Du willst:
\documentclass{scrreprt}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[ansinew]{inputenc}
\usepackage{pdfpages}
\usepackage[ngerman]{hyperref}

\begin{document}
\chapter{Test}

Hier wird nun auf \hyperlink{dummy.2}{''Seite 2''} der eingebundenen PDF verwiesen. Diese Seite befindet sich auf Seite \pageref{dummy.2} in diesem Dokument.

Und hier nun auf \hyperlink{dummy.4}{''Seite 4''} verwiesen.
Diese Seite befindet sich auf Seite \pageref{dummy.4} in diesem Dokument.

\includepdf[%
   pagecommand={\thispagestyle{plain}\phantomsection\label{dummy.\csname AM@page\endcsname}},%
   pages=1-,%
   scale=0.8,%
   link=true,%
   linkname=dummy%
]{dummy.pdf}

\end{document}
Richtig?

IrenaSekuta
Forum-Century
Forum-Century
Beiträge: 230
Registriert: Di 2. Dez 2008, 10:05

Danke !!!

Beitrag von IrenaSekuta »

Habe erst jetzt gemerkt, dass ich vergessen hatte die "dummy.pdf" anzuhängen. Eventuell wäre das dem Verständnis dienlicher geworden. Sorry!

Aber dein Lösungsvorschlag ist genau das, was ich suche. Danke !

Jetzt versuche ich erst einmal zu ergründen, was
\csname AM@page\endcsname
macht und wie man hätte darauf kommen können.

Gruß,

Irena

PS: Hier nun ein fertiges Minimalbeispiel mit dummy.pdf
\documentclass{scrreprt} 
\usepackage[ngerman]{babel} 
\usepackage[T1]{fontenc} 
\usepackage[ansinew]{inputenc} 
\usepackage{pdfpages} 
\usepackage[ngerman]{hyperref} 

\begin{document} 
\chapter{Test} 

Hier wird nun auf \hyperlink{A.2}{''Page 2'' auf Seite \pageref{A.2}} der eingebundenen PDF verwiesen.

Und hier nun auf \hyperlink{B.15}{''Page 15'' auf Seite \pageref{B.15}} verwiesen.

\includepdf[% 
   pagecommand={\thispagestyle{plain}\phantomsection\label{A.\csname AM@page\endcsname}},% 
   pages=1-3,% 
   scale=0.8,%
   link=true,%
   linkname=A,%
]{dummy.pdf}

\includepdf[% 
   pagecommand={\thispagestyle{plain}\phantomsection\label{B.\csname AM@page\endcsname}},% 
   pages=12-,% 
   scale=0.8,%
   link=true,%
   linkname=B,%
]{dummy.pdf}

\end{document}
Dateianhänge
dummy.pdf
(30.17 KiB) 392-mal heruntergeladen
----------------------------------
- WinXP und Win 7 und ansatzweise Ubuntu 9.10 :-)
- Miktex 2.9 (Portable)
- WinEdt 6

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

\csname foo\endcsname ist das gleiche wie \foo erlaubt aber nicht nur Zeichen der Kategorie letter als Teil des Makronamens. Ich spare mir in dem Fall also schlicht, irgendwelche Umstände mit korrekt platzierten \makeatletter und \makeatother.

Antworten