fatsack
06-05-2008, 05:20
Hi,
meine erste Frage wäre, wieso ich beim Verwenden von algorithmicx \usepackage{algorithm} angebe und nicht \usepackage{algorithmicx}? Wer soll da bei der Vielzahl der Algorithmen-Pakete noch durchsteigen? Mich verwirrt's total, aber das nur am Rande.
Meine zweite Frage bezieht auf das (wohl öfter) auftretende Problem "destination with the same identifier..." wenn ich hyperref und algorithmicx verwende. Ich meine gelesen zu haben, dass hyperref in der Regel ganz am Ende, aber vor hypcap und algorithmicx eingebunden werden soll.
So habe ich's dann auch gemacht:
... hier noch ein paar andere Pakete eingebunden ...
\usepackage[
pdfstartview={FitH},
plainpages=false,
pdfpagelabels,
colorlinks=true,
linkcolor=black,
citecolor=black,
urlcolor=black]{hyperref}
\usepackage[figure, table]{hypcap}
\usepackage{algorithm}
\usepackage{algpseudocode}
... hier KEINE anderen Pakete mehr eingebunden ...
Tollerweise bekomme ich nun also oben genannte Warnung sobald ich eine Grafik im Text referenziere (andere Verweise auf Kapitel haben zu keinen Problemen geführt) obwohl ich die vorgeschlagene Reihenfolge einhalte. Wenn ich die Reihenfolge spaßeshalber mal umdrehe, also einfach mal \usepackage{algorithm} vor \usepackage[...]{hyperref} setze, kommt die Warnung nicht... --> Sinn?
Ich muss allerdings sagen, dass ich keine Ahnung habe, ob in diesem Fall dann das algorithmicx Paket noch seinen Dienst verrichtet...
PS: Minimalbeispiel in kürze...
Minimalbeispiel:
\documentclass{report}
\usepackage{graphicx}
\usepackage[pdfstartview={FitH},
plainpages=false,
pdfpagelabels,
colorlinks=true,
linkcolor=black,
citecolor=black,
urlcolor=black]{hyperref}
\usepackage[figure, table]{hypcap}
\usepackage{algorithm}
\usepackage{algpseudocode}
\begin{document}
\chapter{Kapitel 1}
\label{kap1}
Blablablablablablabla \ref{kap1}.
\begin{figure}
\centering
\includegraphics[width=\textwidth]{Winter}
\caption{Windows im Winter}
\label{winter}
\end{figure}
Blablablablablablabla .
\end{document}
In dem Beispiel brauch ich das Bild nicht mal zu referenzieren und schon bekomm ich die Warnung:
destination with the same identifier (name{figure.1.1}) has been already used, duplicate ignored \end{document} (followed by: <Winter.jpg>] (document.aux) )) min document.tex line 32 1210044660265 93290
Wenn ich die beiden Anweisungen für die algopakete vor das hyperref stelle, verschwindet die Warnung.
meine erste Frage wäre, wieso ich beim Verwenden von algorithmicx \usepackage{algorithm} angebe und nicht \usepackage{algorithmicx}? Wer soll da bei der Vielzahl der Algorithmen-Pakete noch durchsteigen? Mich verwirrt's total, aber das nur am Rande.
Meine zweite Frage bezieht auf das (wohl öfter) auftretende Problem "destination with the same identifier..." wenn ich hyperref und algorithmicx verwende. Ich meine gelesen zu haben, dass hyperref in der Regel ganz am Ende, aber vor hypcap und algorithmicx eingebunden werden soll.
So habe ich's dann auch gemacht:
... hier noch ein paar andere Pakete eingebunden ...
\usepackage[
pdfstartview={FitH},
plainpages=false,
pdfpagelabels,
colorlinks=true,
linkcolor=black,
citecolor=black,
urlcolor=black]{hyperref}
\usepackage[figure, table]{hypcap}
\usepackage{algorithm}
\usepackage{algpseudocode}
... hier KEINE anderen Pakete mehr eingebunden ...
Tollerweise bekomme ich nun also oben genannte Warnung sobald ich eine Grafik im Text referenziere (andere Verweise auf Kapitel haben zu keinen Problemen geführt) obwohl ich die vorgeschlagene Reihenfolge einhalte. Wenn ich die Reihenfolge spaßeshalber mal umdrehe, also einfach mal \usepackage{algorithm} vor \usepackage[...]{hyperref} setze, kommt die Warnung nicht... --> Sinn?
Ich muss allerdings sagen, dass ich keine Ahnung habe, ob in diesem Fall dann das algorithmicx Paket noch seinen Dienst verrichtet...
PS: Minimalbeispiel in kürze...
Minimalbeispiel:
\documentclass{report}
\usepackage{graphicx}
\usepackage[pdfstartview={FitH},
plainpages=false,
pdfpagelabels,
colorlinks=true,
linkcolor=black,
citecolor=black,
urlcolor=black]{hyperref}
\usepackage[figure, table]{hypcap}
\usepackage{algorithm}
\usepackage{algpseudocode}
\begin{document}
\chapter{Kapitel 1}
\label{kap1}
Blablablablablablabla \ref{kap1}.
\begin{figure}
\centering
\includegraphics[width=\textwidth]{Winter}
\caption{Windows im Winter}
\label{winter}
\end{figure}
Blablablablablablabla .
\end{document}
In dem Beispiel brauch ich das Bild nicht mal zu referenzieren und schon bekomm ich die Warnung:
destination with the same identifier (name{figure.1.1}) has been already used, duplicate ignored \end{document} (followed by: <Winter.jpg>] (document.aux) )) min document.tex line 32 1210044660265 93290
Wenn ich die beiden Anweisungen für die algopakete vor das hyperref stelle, verschwindet die Warnung.