PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : \hypcapspace: wie und wo einsetzen?



Markstar
01-08-2006, 14:10
Hi,
habe ja schonmal ein paar Fragen hier (http://www.mrunix.de/forums/showthread.php?t=45696) gehabt. Dort hatte ich geschrieben das das mit dem Abstand zu der Figur schon klappt, aber leider habe ich mein Beispiel gelöscht und jetzt bekomme ich es nicht mehr hin. :o

Was ich will:
Durch klicken auf einen Link (normalerweise ist das ja die Angabe der Figur oder Tabellennummer) zu der jeweiligen Abbildung zu kommen, allerdings kurz vor der Abbildung so das man sie noch gut sieht!

Das hier klappt schonmal:

\documentclass[a4paper,ngerman, 11pt]{article}
\usepackage{hyperref}
\usepackage{hypcap}
\usepackage{blindtext}

\begin{document}

%\renewcommand{\hypcapspace}{1pt} <-- funktioniert nicht richtig!?!

\Blindtext

\hyperlink{hypertest}{Abbildung \ref*{testlabel}}\\

\Blindtext

\begin{figure}[ht]
\capstart
%\hypcapspace <--- hierhin???
\hypertarget{hypertest}{}
\includegraphics[width=3cm]{Testbild}
\caption{Soll ein Test sein}
\label{testlabel}
\end{figure}

\Blindtext

\end{document}

Allerdings schliesst jetzt wie gesagt der Rand oben ab, ich hätte aber gerne einen kleinen Abstand nach oben. Laut der hypcap-Doku geht das auch mit dem Befehl \hypcapspace. Allerdings bekomme ich das nicht hin - ich weiss weder wo genau ich den Befehl hinpacken soll noch wie ich denn nun mir den Abstand definieren kann.

Wenn ich, wie in der Doku beschrieben, den Befehl \renewcommand{\hypcapspace}{1pt} eingebe, bekomme ich zwar keine Fehlermeldung bei der Verwendung von \hypcapspace mehr, dafür erscheint dann aber in der Figur ein zusätzliches "1pt" und es funktioniert immer noch nicht. :(

daswaldhorn
01-08-2006, 17:16
Hallo,

also bei mir klappt es einwandfrei, wennn der Befehl "\renewcommand{\hypcapspace}{1pt}" in der Präambel oder nach \begin{document} steht. In der figure-Umgebung ist er wirkungslos. Ein einzelnes "\hypcapspace" gibt nur den Inhalt dessen aus, also lasse es weg.

Noch ne kleine Anmerkung am Rande: Das "\capstart" kannst du weglassen, wenn du das Paket "hypcap" mit der Option "all" lädst.

Grüße, Carsten

Markstar
01-08-2006, 17:29
:eek: ... :confused:

Also bei mir klappt es nicht. Ich habe mal die Datei nach deinen Angaben geändert:

\documentclass[a4paper,ngerman, 11pt]{article}
\usepackage{blindtext, afterpage}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage[all]{hypcap}
\renewcommand{\hypcapspace}{10mm}

\begin{document}
\Blindtext

\hyperlink{hypertest}{Abbildung \ref*{testlabel}}\\

\Blindtext

\begin{figure}[ht]
\begin{center}
\hypertarget{hypertest}{}
\makebox[\textwidth]{\framebox[2cm]{\rule{0pt}{2cm}}}
\caption{Soll ein Test sein}
\label{testlabel}
\end{center}
\end{figure}

\Blindtext
\end{document}

Dann befindet sich auf Seite 2 der Link auf die Figur und wenn ich da drauf klicke komme ich genau auf den oberen Rand der Figur und nicht, wie ich ja möchte, mit etwas Abstand (mit Acrobat 7). :(

daswaldhorn
01-08-2006, 18:03
Hallo,

mache es so, dann klappt es:
\documentclass[a4paper,ngerman, 11pt]{article}
\usepackage{blindtext, afterpage}
\usepackage{graphicx}
\usepackage{hyperref}
\usepackage[all]{hypcap}
\renewcommand{\hypcapspace}{10mm}

\begin{document}
\Blindtext

%\hyperlink{hypertest}{Abbildung \ref*{testlabel}}\\
Abbildung~\ref{testlabel}

\Blindtext

\begin{figure}[ht]
%\begin{center}
%\hypertarget{hypertest}{}
\centering
\makebox[\textwidth]{\framebox[2cm]{\rule{0pt}{2cm}}}
\caption{Soll ein Test sein}
\label{testlabel}
%\end{center}
\end{figure}

\Blindtext
\end{document}Grüße, Carsten

Markstar
01-08-2006, 18:16
Aha, also mit anderen Worten:
Ich brauche dafür gar keine \hypertarget und \hyperlink.

:cool: , danke!!! :)