Bilder und Links in pdf-Dateien benutzen

Neue Frage »

dachdecker2 Auf diesen Beitrag antworten »
Bilder und Links in pdf-Dateien benutzen
Hallöchen Matheboardler,

ich verwende MikTeX als LaTeX-Editor und habe folgendes Problem. Mit latex.exe (LATEX => PS => PDF) kann man in der pdf-Datei mit Links arbeiten, was in pfdlatex.exe (LATEX => PDF) nicht geht. Andersherum funktioniert das Einbinden von jpg-Dateien wunderbar, dafür sind die Links dort nicht anklickbar.

Ich habe latex.exe zwar schon bewegen können, .tex-Dateien mit eingebundenen .eps-Grafiken fehlerfrei zu comlipieren, die Ausgabedatei.pdf geht dann allerdings nur bis zur letzten Seite, auf der noch kein Bild ist. Der Rest fehlt einfach.

In der LaTex Hilfe hab ich in der siebten Seite folgendes gesehen:
Zitat:
\documentclass{article}
\usepackage{german}
\usepackage{graphicx}
%Wenn man pdftex nutzt muß folgende
%Zeile verwandt werden
%\DeclareGraphicsRule{*}{mps}{*}{}

\begin{document}
\section*{Wurzelfunktion (Geraden)}
\includegraphics[scale=2.5]{foo.1}

\section*{Wurzelfunktion (Kurve)}
\includegraphics[scale=2.5]{foo.2}

\section*{Das Haus vom Nikolaus}
\includegraphics{foo.3}
\end{document}


bei mir funktioniert das auch mit \DeclareGraphicsRule{*}{mps}{*}{} nicht.

Nochmal kurz: Kann mir jemand sagen, wie ich Links (zum anklicken) und Bilder in die Ausgabedatei.pdf bekomme?
Calvin Auf diesen Beitrag antworten »
RE: Bilder und Links in pdf-Dateien benutzen
Für die Grafiken habe ich folgendes in der Präambel:
code:
1:
2:
3:
4:
5:
\ifx\pdftexversion\undefined
\usepackage[dvips]{graphicx}
\else
\usepackage[pdftex]{graphicx}
\fi


Dann kannst du Grafiken mit \includegraphics[Größe]{dateiname_ohne_Endung} eingeben.

Die Grafikdateien müssen für das kompilieren mit latex.exe im eps-Format vorliegen. Beim kompilieren mit pdflatex im jpg,png,pdf-Format. Möglicherweise gehen auch noch andere Formate, die ich vergessen habe.

Links bekommst du mit \usepackage{hyperref}
dachdecker2 Auf diesen Beitrag antworten »

Ich hab das immer von Hand geändert ... Augenzwinkern

Das Problem bleibt aber: latex.exe macht die Links ordentlich und pdflatex kann dafür bilder einbinden, an deren Stelle mit latex.exe erzeugte .pdf's einfach aufhören.
Calvin Auf diesen Beitrag antworten »

Zitat:
Original von dachdecker2
Ich hab das immer von Hand geändert ... Augenzwinkern

Das Problem bleibt aber: latex.exe macht die Links ordentlich und pdflatex kann dafür bilder einbinden, an deren Stelle mit latex.exe erzeugte .pdf's einfach aufhören.


Irgendwie bringst du gerade was durcheinander:

latex.exe erzeugt eine dvi-Datei. Dort solltest du die Bilder sehen, die im eps-Format vorliegen.

pdflatex.exe erzeugt eine pdf-Datei. Dort solltest du die Bilder sehen, die im jpg,png,pdf-Format vorliegen.

Am praktischsten ist es, wenn du die Bilddateien in beiden Varianten vorliegen hast. Da man die Dateiendung bei \includegraphics wegläßt, wird die passende Datei gesucht.

Und mit \usepackage{hyperref} wird in pdf-Dateien das Inhaltsverzeichnis und mit \label bzw. \ref erzeugte Links automatisch erzeugt.

Was kommen denn für Fehlermeldungen beim kompilieren?
dachdecker2 Auf diesen Beitrag antworten »

MikTeX ruft unter der Ausgabeoption LATEX => PS => PDF zunächst latex.exe mit den Kommandozeilenoptionen --src -interaction=nonstopmode -max-print-line=120 "%Wm" auf und später dann die Postprozessoren DviPs (PDF) und Ghostscript (ps2pdf). Beim Erstellen der .pdf-Datei auf diese Weise funktionieren die links wie das im Packet hyperref beschriben ist. Bilder können als .eps-Datei eingebunden werden (da kommen keine Compilerfehler), jedoch endet die erzeugte .pdf-Datei eine Seite bevor das erste Bild einbegunden ist.

Stellt man als Ausgabeoption LATEX => PDF im MikTeX ein, so wird pdflatex mit den Kommandozeilenoptionen -interaction=nonstopmode -max-print-line=120 "%pm" aufgerufen. Postprozessor ist keiner eingestellt. So lassen sich .jpeg-Dateien einbinden, die auch angezeigt werden. jedoch scheint das packet hyperref nicht zu funktionieren - die Links sind nur Text, keine anklickbaren Verweise (also wie ohne hyperref Augenzwinkern ).

Was kann man machen, damit man entweder mit LATEX => PS => PDF bilder (funktionierend) einbinden kann oder das Packet hyperref bei der Einstellung LATEX => PDF nicht wirkungslos scheint?
Calvin Auf diesen Beitrag antworten »

Kannst du mal ein kleines Stück aus deinem Dokument hier einstellen. Bei mir geht das nämlich alles problemlos und ich kann mir immer noch nicht so recht vorstellen, was du eigentlich machen möchtest.

Bezüglich des hyperref-Pakets kannst du auch mal hier lesen

Ansonsten bin ich hier im Moment ratlos und hoffe, dass sich noch andere User in die Diskussion einklinken *mitdemZaunpfahlwink* Augenzwinkern
 
 
dachdecker2 Auf diesen Beitrag antworten »

so... nun mit Beispielen Augenzwinkern

Es gibt nur einen kleinen Unterschied zwischen den Quelldateien, mit denen die entsprechenden pdf's erzeugt wurden:
für die Compilation mit der Einstellung LATEX => PDF hab ich die eps-Version der Grafik verwendet, für LATEX => PS => PDF die jpg-Variante. Dabei wird die Box der Überschrift "Kapitel1" als zu klein angezeigt. Warnungen und Fehler treten nicht auf. Die Anzahl erstellter Seiten ist seltsamerweise in beiden Fällen 3.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
%Erzeugt mit dem LaTeX-Generator: http://latex.sehnot.de
%\headheight{42pt}
\documentclass[12pt,oneside,a4paper]{scrartcl}	
	%Schriftgröße, Layout, Papierformat, Art des Dokumentes

\usepackage[left=2.41cm,right=2.04cm,top=1.69cm,
	bottom=1.69cm,includeheadfoot]{geometry}
	%Einstellungen der Seitenränder

\usepackage[ps2pdf,pagebackref,pdfpagelabels]{hyperref}	
	%Querverweise als hyperlinks
\hypersetup{pdftitle = {PDF-Titel},
	pdfsubject = {},
	pdfauthor = {dachdecker2},
	pdfkeywords = {Beispiel, hyperref, includegraphics},
	pdfcreator = {LaTeX},
	pdfproducer = {LaTeX with hyperref}}

\pdfbookmark{Kapitel1}{Kapitel1}
\pdfbookmark{Kapitel2}{Kapitel2}

\usepackage{ngerman}				
	%neue Rechtschreibung 
\usepackage[latin1]{inputenc} 
	%Umlaute ermöglichen

\usepackage{xtab}					
	%xtabular-umgebung einbinden

\ifx\pdftexversion\undefined
	\usepackage[dvips]{graphicx}
	\else
	\usepackage[pdftex]{graphicx}
	\fi

\usepackage{multirow} %multirow einbinden
%\usepackage{pstricks} %Zeichnen von Grafiken im Quelltext
%\DeclareGraphicsRule{.jpg}{eps}{}{`jpeg2ps #1}

\usepackage{fancyhdr} %Kopf- und Fußzeile
\pagestyle{fancy}
%\fancyhf{}

\fancyhead[L]{dachdecker2} %Kopfzeile links bzw. innen
\fancyhead[C]{} %Kopfzeile mittig
\fancyhead[R]{\href{mailto:[email protected]}
	{[email protected]}}	%Kopfzeile rechts bzw. außen
\renewcommand{\headrulewidth}{0.5pt} %Linie oben
	
\fancyfoot[L]{} %Fußzeile links bzw. innen
\fancyfoot[C]{} %Fußzeile mittig
\fancyfoot[R]{} %Fußzeile rechts bzw. außen
\renewcommand{\footrulewidth}{0.5pt} %Linie unten

\setlength{\parindent}{0pt} %Einzug auf 0 verkürzen


\begin{document}

\pagestyle{empty} 
\vspace{7cm}
\begin{center}\textbf{\LARGE{Titel des Dokuments}}\\
\vdots
\end{center}
\vspace{5cm}

\begin{tabbing}
	Links ins Dokument:	
	\= - \hyperref[Kapitel1]{Kapitel1}\\	
	\> - \hyperref[Kapitel2]{Kapitel2}\\	
\end{tabbing}

\newpage
\pagestyle{fancy} 
\section*{Kapitel1}\hypertarget{Kapitel1}{}\label{Kapitel1}
Hier ist der Text des ersten Kapitels ... 

\newpage
\section*{Kapitel2}\hypertarget{Kapitel2}{}\label{Kapitel2}

Im Kapitel 2 muss natürlich auch noch etwas Text sein und 
natürlich der zweite Kernpunkt neben de Links: das Bild\\
\\
\includegraphics[width=0.5\textwidth]{ram.eps} 
RAM kann man nie genug haben ;)
\end{document}


// pdf darf ich nicht hochzuladen, Dateien über 80 kB auch nicht - das notwenige ist aber dabei smile .

in deinem Link ist aufgeführt, welche Executeables mit hyperref zusammenarbeiten. pdflatex.exe ist nicht dabei ... ich bin schon am Rumprobieren, aber den Dateinamen zu tauschen reicht nicht aus.
Calvin Auf diesen Beitrag antworten »

Hi Dachdecker,

sieht so aus, als würdest du die gleiche Taktik haben wie ich Big Laugh Wenn irgendwas nicht funktioniert nach einer Lösung suchen und solange rumbasteln, bis es funktioniert. Aber wie ich inzwischen weiß, wird es dadurch ein bißchen durcheinander. Da sind einige Dinge, die du auf jeden Fall noch ändern solltest.

Welches ist eigentlich das endgültige Dateiformat, das du brauchst? Wenn dir eine pdf-Datei genügt, dann nutze am besten pdflatex. Das klappt hervorragend, wenn du die folgenden Änderungen anwendest.

1) Da du Windows nutzt, ändere \usepackage{latin1]{inputenc} zu \usepackage[ansinew]{inputenc}. Das mit latin1 ist für Dokumente, die unter Linux erstellt werden.

2)\usepackage[left=2.41cm,right=2.04cm,top=1.69cm, bottom=1.69cm,includeheadfoot]{geometry}

Ist es eine Vorgabe, dass du diese Ränder verwenden sollst? Wenn nicht, dann lass diese Zeile weg. Die Dokumentenklasse scartcl hat zwar relativ große Ränder, aber das ist schon so optimiert, dass es gut aussieht und angenehm zu lesen ist. Wenn du also die Seitenränder nicht vorgegeben kriegst, dann lösche diese Zeile raus.

3)\pdfbookmark{Kapitel1}{Kapitel1}
\pdfbookmark{Kapitel2}{Kapitel2}


Das brauchst du IMHO nicht.

4)
code:
1:
2:
3:
4:
5:
6:
7:
8:
\usepackage[ps2pdf,pagebackref,pdfpagelabels]{hyperref}
%Querverweise als hyperlinks
\hypersetup{pdftitle = {PDF-Titel},
pdfsubject = {},
pdfauthor = {dachdecker2},
pdfkeywords = {Beispiel, hyperref, includegraphics},
pdfcreator = {LaTeX},
pdfproducer = {LaTeX with hyperref}}

Das funktioniert bei mir auch nicht so, wie du es gerne hättest. Keine Ahnung, warum. Bei mir sieht das folgendermaßen aus:
code:
1:
2:
\usepackage[pdftex,colorlinks=true,linkcolor=blue,linkbordercolor=000,citebordercolor=000,pdftitle={Titel},pdfauthor={Mein Name},plainpages=false,pdfpagelabels,hypertexnames=false]{hyperref}
\usepackage[all]{hypcap} %damit Bilder mit dem oberen Rand verlinkt werden


5)\setlength{\parindent}{0pt}
Das habe ich zwar selbst so empfohlen, aber inzwischen habe ich nachgelesen, dass es Probleme geben kann. Deshalb empfiehlt es sich, diese Zeile zu löschen und stattdessen bei \documentclass[...,halfparskip,...]{scartcl} einzufügen. Damit hat man keinen Einzug, dafür einen etwas größeren Abstand zwischen zwei Abständen.

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
\begin{document}

\pagestyle{empty} 
\vspace{7cm}
\begin{center}\textbf{\LARGE{Titel des Dokuments}}\\
\vdots
\end{center}
\vspace{5cm}

\begin{tabbing}
	Links ins Dokument:	
	\= - \hyperref[Kapitel1]{Kapitel1}\\	
	\> - \hyperref[Kapitel2]{Kapitel2}\\	
\end{tabbing}

Ich nehme an, dass soll eine Titelseite und ein Inhaltsverzeichnis sein. Da machst du dir viel zu viel Mühe. Eine automatische Titelseite bekommst du mit
code:
1:
2:
3:
4:
\title{Titel des Dokuments}
\author{dachdecker2}
\date{\today}
\maketitle
Das Inhaltsverzeichnis bekommst du automatisch mit tableofcontents. Dieses wird mit pdflatex bei Nutzung von \usepackage{hyperref} automatisch verlinkt. Bei den Überschriften reicht ein simples \section{Überschrift}.

Beim Einfügen der Grafiken reicht folgende Zeile:
\includegraphics[width=0.5\textwidth]{ram} Die richtige Endung wird automatisch gesucht. Wenn du nun die Dateien ram.eps und ram.jpg im selben Verzeichnis hast, kannst du wahlweise mit latex und pdflatex kompilieren. Es wird automatisch die richtige Datei eingebunden.

Bei Kopf- und Fußzeilen könnte man auch noch was ändern, damit es besser aussieht. Komascript bringt da eigene Stilangaben mit, die du allerdings nicht verwendest. Dazu schreibe ich vielleicht später mal was. Grundsätzlich solltest du dir mal die Komaskript-Anleitung und die LaTeX-Tabus anschauen.

Dein Beispiel würde bei mir also so aussehen:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
\documentclass[12pt,oneside,halfparskip,a4paper]{scrartcl}
%Schriftgröße, Layout, Papierformat, Art des Dokumentes

\usepackage{ngerman}
%neue Rechtschreibung 
\usepackage[ansinew]{inputenc} 
%Umlaute ermöglichen
\usepackage[T1]{fontenc}
\usepackage{xtab}
%xtabular-umgebung einbinden

\ifx\pdftexversion\undefined
\usepackage[dvips]{graphicx}
\else
\usepackage[pdftex]{graphicx}
\fi

\usepackage{multirow} %multirow einbinden
%\usepackage{pstricks} %Zeichnen von Grafiken im Quelltext
%\DeclareGraphicsRule{.jpg}{eps}{}{`jpeg2ps #1}

\usepackage{fancyhdr} %Kopf- und Fußzeile
\usepackage[pdftex,colorlinks=true,linkcolor=blue,linkbordercolor=000,citebordercolor=000,pdftitle={Titel},pdfauthor={Mein Name},plainpages=false,pdfpagelabels,hypertexnames=false]{hyperref}
\usepackage[all]{hypcap}



\pagestyle{fancy}
%\fancyhf{}

\fancyhead[L]{dachdecker2} %Kopfzeile links bzw. innen
\fancyhead[C]{} %Kopfzeile mittig
\fancyhead[R]{\href{mailto:[email protected]}
{[email protected]}}%Kopfzeile rechts bzw. außen
\renewcommand{\headrulewidth}{0.5pt} %Linie oben

\fancyfoot[L]{} %Fußzeile links bzw. innen
\fancyfoot[C]{} %Fußzeile mittig
\fancyfoot[R]{} %Fußzeile rechts bzw. außen

%Angaben für Titelseite
\title{Titel des Dokuments}
\author{dachdecker2}
\date{\today}

\renewcommand{\footrulewidth}{0.5pt} %Linie unten
\begin{document}

\pagestyle{empty}
\vspace{7cm}
\maketitle
\tableofcontents
\newpage
\pagestyle{fancy}
\section{Kapitel1}
Hier ist der Text des ersten Kapitels ...

\newpage
\section{Kapitel2}

Im Kapitel 2 muss natürlich auch noch etwas Text sein und
natürlich der zweite Kernpunkt neben de Links: das Bild\\
\\
\includegraphics[width=0.5\textwidth]{ram}
RAM kann man nie genug haben ;)
\end{document}
dachdecker2 Auf diesen Beitrag antworten »

Ich bin aus dem Kurzurlaub über den Jahreswechsel zurück, und hab deinen Post und die beiden Links durchgearbeitet smile . Das Dokument sieht jetzt sehr nach meinem Geschmack aus, auch das schönere Einbinden ganzseitiger Bilder funktioniert besser, da jetzt \vspace den Inhalt auch über den Textrand in die Kopfzeile schieben kann.

Übrigens, das mit dem Rumprobieren stimmt - über 2 Wochen hab ich das gemacht, bis ich durch unseren gemeinsamen Boardadmin (das Physikerboard lässt grüßen) Thomas den Tipp mit dem Matheboard bekommen habe.

Auf den Punkt gebracht bin ich sehr begeistert - vielen Dank nochmal smile
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »