PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Innerhalb von \includepdf auf bestimmte Seite verweisen



mount
15-04-2010, 15:52
Hallo!

Ich stell mich grad an. Ich will ein vorhandenes pdf ("test.pdf", hat z.B. 20 Seiten) einbinden und dann auf eine bestimmte Seite darin (Seite 5 in test.pdf) verweisen. Ich habe leider keinerlei Plan, wie das gehen soll und bin auch in keinem Forum fündig geworden, evtl aber auch nur blind...
Hier mein Minimalbeispiel:

\documentclass{article}
\usepackage{hyperref}

\usepackage{pdfpages}

\begin{document}

Test \hyperlink{Datei1}{PDF-Datei1,\,S.\,1}
%Bei diesem Hyperlink würde ich gerne auf eine bestimmte Seite innerhalb von test.pdf verweisen.
\newpage


\includepdf[pages={1-3},pagecommand={\hypertarget{Datei1}{}}]{test.pdf}

\end{document}

Vielen Dank schon mal :)

edico
16-04-2010, 11:45
Der Ansatz ist imo richtig; allerdings hast du selbst festgestellt, dass du dann jede Seite einzeln einbinden musst, um die Anker zu setzen. Alternativ bietet sich pageref an.



%%% -----------------------------------------------------------------------
%%% Dummy.tex Embedded File
%%% -----------------------------------------------------------------------
\begin{filecontents*}{Dummy.tex}
\documentclass[paper=a4,pagesize]{scrartcl}
\usepackage{ifthen,calc,eso-pic}
\newcounter{NumPages}
\setcounter{NumPages}{20}% <<<<<<<<<<<<<<<<<<<<<<<<<< Anzahl Seiten angeben
\setcounter{NumPages}{\value{NumPages} + 1}
\newsavebox{\ThePage}
\pagestyle{empty}
\ClearShipoutPicture
\AddToShipoutPicture{\put(200,500){\usebox{\ThePag e}}}
\begin{document}
\whiledo{\value{page}<\value{NumPages}}{%
\sbox{\ThePage}{%
\Huge Dummy Seite\,\thepage}
\mbox{}\clearpage}
\end{document}
\end{filecontents*}
%%% -----------------------------------------------------------------------
%%% Test.tex Testfile
%%% -----------------------------------------------------------------------
\documentclass{article}
\setlength{\parindent}{0pt}
\usepackage{pdfpages}
\makeatletter
\newcommand{\mylabel}{%
\thispagestyle{empty}%
\phantomsection
\label{\AM@docname.\AM@page}%
}
\makeatother

\usepackage[colorlinks]{hyperref}

\begin{document}

\subsection*{Alternative1: hyperlink+hyperref}
\hyperlink{Datei1}{Dummy,\,S.\,1}

%Bei diesem Hyperlink würde ich gerne auf eine bestimmte Seite innerhalb von test.pdf verweisen.
\hyperlink{Datei2}{Dummy,\,S.\,2}

\subsection*{Alternative2: pageref}
Dummy,\,S.\,4: \pageref{Dummy.pdf.4}\par
Dummy,\,S.\,5: \pageref{Dummy.pdf.5}\par
Dummy,\,S.\,19: \pageref{Dummy.pdf.19}

%\newpage
%\includepdf[pages={1-3},pagecommand={\hypertarget{Datei1}{}}]{test.pdf}
% Alternative1:
\includepdf[pages={1},pagecommand={\hypertarget{Datei1}{}}]{Dummy.pdf}
\includepdf[pages={2},pagecommand={\hypertarget{Datei2}{}}]{Dummy.pdf}
\includepdf[pages={3},pagecommand={\hypertarget{Datei3}{}}]{Dummy.pdf}

% Alternative2:
\includepdf[pages={4-20},pagecommand=\mylabel]{Dummy.pdf}

\end{document}


Ungeprüft: es wird nur dann laufen, wenn die einzubindende PDF-Datei Anker gesetzt bekommen hat (auf alle Fälle immer dann, wenn mit LaTeX erstellt).

edico

mount
16-04-2010, 14:37
Hallo edico!!
Cool, genau das habe ich gesucht (pageref).

Vielen vielen Dank!!
lg mount