Dann schreiben wir einmal ein minimalbeispiel:
Code:
\documentclass[a4paper,12pt,oneside]{book}
\usepackage{graphicx}
\usepackage{ifthen}
\DeclareGraphicsExtensions{.png,.jpg}
\newcommand{\mypath}{./einordner/}
\newcommand{\temppath}{./}
\newcommand{\meinbild}{}
\newcommand{\myincludegraphics}[3]{%
%Schauen ob die Datei über Mypath oder über Temppath erreichbar
\edef\meinbild{\mypath #3.png}%
\IfFileExists{\meinbild}%
{\immediate\write17{Es liegt im normalen mypath}}%
{ \edef\meinbild{\temppath #3.png}%
\IfFileExists{\meinbild}%
{\immediate\write17{Es liegt im temppath}}%
{\errmessage{caution: file \meinbild\space not found!}}%
}%
\immediate\write17{Also die dritte übergebene Variable wurde nun auf \meinbild\space gesetzt.}
\ifthenelse{\equal{#1}{}}{%
\ifthenelse{\equal{#2}{}}{%
\includegraphics{\meinbild}%
}{%
\includegraphics[#2]{\meinbild}%
}%
}{%
\ifthenelse{\equal{#2}{}}{%
\includegraphics[width=#1]{\meinbild}%
}{%
\includegraphics[width=#1,height=#2]{\meinbild}%
}%
}%
}
\begin{document}
\begin{figure}[ht]
\begin{center}
\myincludegraphics{\textwidth}{}{bilder/test}
\caption{Ein Testbild aus irgendeiner Bildergallerie}
\label{fig:test}
\end{center}
\end{figure}
\end{document}
So nun habe ich das Problem, dass ich hier die Endung der Grafikdatei hartcodieren muss, was ich aber nicht unbedingt möchte, da mehrere Personen an den Dateien arbeiten.
Gibt es:
1) eine Möglichkeit den Befehl \includegraphics irgendwie zu renewen, sodass er zar wieder aufgerufen wird, aber halt der Pfad zur Datei vorher ausgebessert wird?
2) Wenn nicht, eine Möglichkeit wenigstens die in \DeclareGraphicsExtensions angegebenen Endungen durchzuprobieren?
Danke für jede Antwort!
lg, jiri
Lesezeichen