Wie wende ich xkeyval richtig an?
Hallo!
Ich wollte auf das Thema: [Wie erhalte ich Miniaturansichten der Abbildungen im Abbildungsverzeichnis?][1]
Keys anwenden, damit ich für Miniabbildungen im Abbildungsverzeichnis einen Befehl
`\IMG[file=foo.png, options={scale=1.65}, title={Der Titel}, shorttitle={Der Kurztitel}]`
habe.
`xkeyval` aus [dieser akzeptierten AW][2] aus einem anderen Thema scheint mir dafür die einfachste Möglichkeit.
Leider tut folgende Umsetzung nicht - wa mache ich falsch?
`Hinweis: Für das Programm, werden foo.png und bar.png benötigt. Ich habe die Bilder unten angehängt.`
Ich hoffe, man kan beim Code noch durchsteigen.
\documentclass[a5paper, onside, automark, open=any, headsepline]{scrartcl}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä},germandbls={ß}}
\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[top=10mm]{geometry}
\usepackage{xcolor}
\pagecolor{red!12}
% Mini-Bilder im Abbildungsverzeichnis =========
\usepackage{graphicx}
\newlength{\lofthumbsize}
\setlength{\lofthumbsize}{2em}
\newif\iflofimage
\DeclareRobustCommand*{\lofimage}[2][]{%
\iflofimage
$\vcenter to \lofthumbsize{\vss%
\hbox to \lofthumbsize{\hss\includegraphics[{width=\lofthumbsize,height=\lofthumbsize,keepaspectratio=true,#1}]{#2}\hss}%
\vss}$%
\quad
\fi
\ignorespaces
}
%%% Definition klassisch %%%%%%%%%%%%%%%%%%%
%\img{<graphicx options>}{FILE.png}{<caption text>}
\newcommand{\img}[3]{%
%\def\
\includegraphics[#1]{#2}
\caption[\lofimage{#2} ooo]{\lofimage{#2} #3}
}%
% ===============================
\usepackage{xkeyval}
%%% Definition mit Keys %%%%%%%%%%%%%%%%%%%
\makeatletter
\newcommand*\IMG@options{}
\newcommand*\IMG@file{}
\newcommand*\IMG@shorttitle{}
\newcommand*\IMG@title{}
\define@key{IMG}{options} {\renewcommand*\IMG@options{#1}}
\define@key{IMG}{file} {\renewcommand*\IMG@file{#1}}
\define@key{IMG}{shorttitle}{\renewcommand*\IMG@shorttitle{#1}}
\define@key{IMG}{title}{\renewcommand*\IMG@title{#1}}
\newcommand*\IMG[1][]{%
\begingroup
\setkeys{IMG}{#1}%
\includegraphics[\IMG@options\]{\IMG@file\}
% \caption[\lofimage{\IMG@file\} \IMG@shorttitle]{\lofimage{\IMG@file\} \IMG@title}
\caption{\lofimage{\IMG@file\} \IMG@title}
\endgroup
}
\makeatother
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%========
\begin{document}
%========
\lofimagetrue
\listoffigures
\lofimagefalse
\vspace{2cm}
\IMG[file=foo.png] %%%%%%%%%%% TUT NICHT!
\section{Abschnittsname}
\begin{figure}[htb]
\centering
\img{scale=0.65}{foo.png}{Urlaubsfoto}
\end{figure}
\begin{figure}[htb]
\centering
\img{scale=0.4}{bar.png}{Graph im Koordinatensystem}
\end{figure}
%========
\end{document}
%========
![alt text][3]
![alt text][4]
[1]: http://texwelt.de/wissen/fragen/6129/wie-erhalte-ich-miniaturansichten-der-abbildungen-im-abbildungsverzeichnis
[2]: http://texwelt.de/wissen/antwort_link/8428/
[3]: http://texwelt.de/wissen/upfiles/foo.png
[4]: http://texwelt.de/wissen/upfiles/bar.png