Bilder in anderem Ordner Thema ist als GELÖST markiert

Tabellen und Grafiken erstellen und anordnen


Steffi

Bilder in anderem Ordner

Beitrag von Steffi »

Hallo!

Kann man Bilder in einem anderen Ordner haben und dann darauf zugreifen (zB in einem Unterordner, um mehr "Ordnung" zu haben)?
Mich stört nämlich, dass alle Bilder und LaTeX-Dateien bunt durcheinander gemischt sind...

Dankeschön,
lg Steffi

Senbei
Forum-Anfänger
Forum-Anfänger
Beiträge: 11
Registriert: Do 17. Jul 2008, 15:18

Beitrag von Senbei »

Klar geht das. Bspw. erstellst du in deinem Projektordner einen Unterordner "Bilder". Wenn du nun ein Bild aus diesem Ordner einfügen willst gibst du einfach den Ordernamen mit an: \includegraphics{bilder\[Bild]}.

Benutzeravatar
Stefan Kottwitz
Admin
Admin
Beiträge: 2500
Registriert: Di 8. Jul 2008, 00:39
Kontaktdaten:

Grafiken in Unterordnern

Beitrag von Stefan Kottwitz »

Hallo Steffi,

ja, Du kannst z.B. einen Unterordner bilder anlegen, Deine Grafiken dort speichern und sie mit
\includegraphics{bilder/bild1}
einbinden.
Ich sehe während des Schreibens, dass Senbei gerade gleiches riet, doch würde ich / und nicht den backslash \ verwenden.

Stefan

Steffi

Beitrag von Steffi »

Vielen Dank :o)

M.

Bilder in anderem Ordner

Beitrag von M. »

Hallo,

Noch allgemeiner ist folgendes:

\documentclass{article}
\usepackage{graphicx}
% Verzeichnis in dem die Bilder liegen. Beispiel fuer Windows-Verzeichnis
\graphicspath{{C:/Ordner1/Ordner2}}
% Tipp: Pfad aus der Explorerleiste kopieren. Nach dem Doppelpunkt einen Slash '/' einfuegen und dann '\' durch '/' ersetzen. Die Ordnernamen sollten keine Leerstellen oder sonstige Zeichen enthalten, die Latex Probleme bereiten koennten.
\begin{document}
%......
\includegraphics{Bild1} % Bild1.xyz liegt im o. g. Verzeichnis 'C:/Ordner1/Ordner2'
%.......
\end{document}

Man kann auch den kompletten Pfad angeben, wenn man keinen Hauptordner fuer Bilder '\graphicspath{...}' verwenden moechte:

\includegraphics{C:/Ordner1/Ordner2/Bild1}

Gruß,
M.

phi
Moderator
Moderator
Beiträge: 420
Registriert: Fr 6. Feb 2009, 21:28

Beitrag von phi »

Absolute Pfade (egal ob mit \graphicspath oder nicht) sind nie eine gute Idee, da sie es unmöglich machen, den Projektordner ohne Änderungen anderswohin zu kopieren oder zu verschieben. Die von Stefan genannte Lösung ist immer zu bevorzugen. Von der Verwendung von \graphicspath ist ebenfalls abzuraten. Falls unbedingt nötig, sollte stattdessen die Umgebungsvariable TEXINPUTS gesetzt werden.

katoon

Pfadangabe

Beitrag von katoon »

Ein abschliessendes Wort zu diesem Beitrag, auch wenn der Artikel schon ein Jahr alt ist.
Um es kurz zu machen der letzte Beitrag von Phi ist Quatsch. Für Pfadangaben sollte immer der Befehl
\graphicspath{Pfad}
verwendet werden. Denn gerade dadurch ist es möglich den Projektordner überall zu verwenden. Es genügt dann lediglich die Pfadangabe in diesem Befehl zu editieren. Verzichtet man auf absolute Pfadangaben und ist der Bilderordner ein Unterordner des Projektordners so ist es noch einfacher , da in den meisten Fällen garnix editiert werden muss. Abgesehen vom eventuellen Austausch von Slash und Backslash.
Im Gegensatz zu Phis Aussage sollte von der Verwendung der Umgebungsvariable TEXINPUTS abgesehen werden. Sicher stellt dies auch eine Möglichkeit dar, ist aber nicht im Sinne des Erfinders.
Ganz und gar verzichten sollte man auf die Verwendung von absoluten Pfaden beim Befehl
\includegraphics
Ändert sich nämlich der Speicherort der Bilder so ist dieser bei jedem einzelnen Befehl neu anzugeben. Was bei vielen Bildern sicherlich etwas mühsam wird.
Fazit:
Verwendet immer \graphicspath und packt alle Bilder des Dokuments in diesen Ordner der bestenfalls noch ein Unterordner des Projektes ist. Ich bin mir sicher, dass mit etwas tiefgehenderen Latex-Kenntnissen auch die Kompatibilität zwischen Linux und Windows oder Mac Rechner im Hinblick auf die Pfadangabe automatisiert werden kann. Sprich die Verwendung von Slash oder Backslash im Pfad.

P.S.: Eine sinnvolle Erweiterung des Befehls ist
\DeclareGraphicsExtensions{.eps,.pdf,.bmp,.png,.mps}
Dadurch genügt es das Bild im /includgraphics-Befehl lediglich durch den Dateinamen ohne Erweiterung anzugeben. Was u.a. auch das Zusammenspiel von Latex und PDFLatex erleichtern kann.

phi
Moderator
Moderator
Beiträge: 420
Registriert: Fr 6. Feb 2009, 21:28

Beitrag von phi »

Ich habe mir das doch nicht ausgedacht:
http://groups.google.de/group/comp.text ... e1937d6a59
Wenn man weiß, wo die Bilder liegen, ist es unproblematischer, einfach das Verzeichnis mit anzugeben, wenn nötig durch einen Wrapper-Befehl. In den meisten Szenarien halte ich den Einsatz von \graphicspath für nicht gerechtfertigt.
\DeclareGraphicsExtensions ist in der gezeigten Form falsch, da nur die tatsächlich unterstützten Erweiterungen deklariert werden sollten, und dafür sorgen die Treiberdateien schon automatisch.

Benutzeravatar
bloodworks
Moderator
Moderator
Beiträge: 1425
Registriert: Mo 19. Jan 2009, 10:52
Wohnort: /dev/null

Beitrag von bloodworks »

Hallo phi hat vollkommen recht \graphicspath sollet nicht mehr verwendet werden. Siehe auch l2tabu.pdf S. 15

Lorz
Forum-Fortgeschrittener
Forum-Fortgeschrittener
Beiträge: 67
Registriert: Mi 26. Feb 2020, 22:13
Wohnort: Bremen

Re: Bilder in anderem Ordner

Beitrag von Lorz »

Hallo!

auch mich interessiert die Möglichkeit, auf Unterordnern zugreifen zu lassen.
Ich habe ja schon gelesen, dass es mit Texinputs ginge. Mit \graphicspath klappt es bereits bei mir. Aber wenn davon abgeraten wird, so würde ich auch lieber Texinputs verwenden. Ich finde jedoch nirgends ein Minimalbeispiel, wie man dies ganz konkret in seiner Projekt-Mutterdatei anlegt, im Gegensatz zu \graphicspath, da ist dies konkret vorgeführt vorfindbar.

Konkret würde ich gern bei \includegraphics zum Order "Bilder" (so nenne ich ihn hier der Einfachheit halber) navigieren. Beim Input-Befehl würde ich hingegen zu einem anderen Ordner "Inputtexdateien" navigieren. Dies gerne auch mittels nur "subdirectory", damit ich das Projekt an andere Orte kopieren kann.

Kann mir da jemand helfen, was man dazu ganz konkret in die Projekt-Datei schreiben muss?

Antworten