Let us a say that I am preparing a course introduction slide and will want to add an image to each entry in the bibliography. (This will serve two purposes, the names will stick to the minds of the students, and that will save the presentation from being boring, specially in my first session of the course.)
So far, I had done this manually (copy-paste of pre-generated bibliography at appropriate places).
\documentclass{beamer}
\usepackage{graphicx}
\begin{document}
\begin{frame}
\frametitle{References}
\begin{columns}
\begin{column}{0.4\textwidth}
\begin{center}
\includegraphics[width=\textwidth]{figures/lamport}
\end{center}
\end{column}
\begin{column}{0.7\textwidth}
\begin{itemize}
\item L.~Lamport, {\em LaTeX - {A} Document Preparation System:
User's Guide and Reference Manual, Second Edition}. Pearson
/ Prentice Hall, 1994.
\end{itemize}
\end{column}
\end{columns}
\end{frame}
\end{document}
The output was rather nice.
But I would like to get rid of the manual part (which is rather tedious and error-prone, and not very scalable) and was wondering whether it would be possible to do this automatically.
My attempts so far has been to use the note
field of .bib entries.
\documentclass{beamer}
\bibliographystyle{ieeetr}
\def\bibimage#1#2{\includegraphics[#1]{figures/#2}}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@book{DBLP:books/daglib/0023602,
author = {Leslie Lamport},
title = {LaTeX - {A} Document Preparation System: User's Guide and Reference
Manual, Second Edition},
year = {1994},
publisher = {Pearson / Prentice Hall},
note = {\bibimage{width=0.25\textwidth}{lamport}}}
\end{filecontents}
\usepackage{graphicx}
\begin{document}
\nocite{DBLP:books/daglib/0023602}
\begin{frame}
\frametitle{Text Books and Other Resources}
\bibliography{\jobname}
\end{frame}
\end{document}
However, I can not control the location of the image. My vision, as you have seen at the start of this post, is to place the texts of each entry at left or right, and the corresponding image on the other side in a balanced way.