假设你有 777 张照片。你想把它们放在 3x4 A4 纸上展示。这样做\begin{figure}...\end{figure}
需要花费很多时间和空间。
还有其他方法可以这样在文件夹中展示这些图形吗?比如用这个文件夹中的所有图形制作这样的演示文稿。
答案1
我假设您的图片是与 pdflatex 兼容的格式。
制作一个名为 liste.dat 的列表,其中的文件名称按正确顺序排列。例如:ls *jpg | sort > liste.dat
然后使用 pdflatex 编译名为 fichier.tex 的文件:
\documentclass[a4apaper]{article}
\usepackage[top=0cm, bottom=0cm, left=0cm, right=0cm]{geometry}
\usepackage{pgfplotstable,tikz,filecontents}
\pgfplotsset{compat=1.9}
\renewcommand{\floatpagefraction}{1}
\begin{document}
\pgfplotstableread{liste.dat}{\Liste}
\pgfplotstablegetrowsof{liste.dat}
\pgfmathsetmacro{\rows}{\pgfplotsretval-1}
\foreach \i in {1,2,...,\rows} {%
\pgfplotstablegetelem{\i}{[index] 0}\of{\Liste}
\let\Name\pgfplotsretval
% If there is a second column with caption for each file
%\pgfplotstablegetelem{\i}{[index] 1}\of{\Liste}
%\let\Caption\pgfplotsretval
\begin{figure}[!p]
\centering
\includegraphics{\Name}
% if there is a caption column
%\caption{\Caption}
\end{figure}
\clearpage
}
\end{document}
然后使用 pdflatex 编译另一个名为 picture.tex 的文件:
\documentclass[a4paper]{article}
\usepackage{pdfpages}
\begin{document}
\includepdf[page=-,nup=3x4]{fichier.pdf}
\end{document}
并且您的文件每页应该有 12(3*4)张图片。
如果 file.dat 包含第二列,其中包含每个文件的标题或为空,则可以同时拥有它们。
答案2
我建议你使用
\usepackage{subfig}
...
\begin{figure}
\centering
\subfloat[][\emph{Figure 1x1}.\label{fig:001}]
{\includegraphics[width=.2\textwidth]{file001}} \quad
\subfloat[][\emph{Figure 1x2}.\label{fig:002}]
{\includegraphics[width=.2\textwidth]{file002}} \quad
\subfloat[][\emph{Figure 1x3}.]
{\includegraphics[width=.2\textwidth]{file003}} \quad
\subfloat[][\emph{Figure 1x4}.]
{\includegraphics[width=.2\textwidth]{file004}} \\
\subfloat[][\emph{Figure 2x1}.]
{\includegraphics[width=.2\textwidth]{file005}} \quad
\subfloat[][\emph{Figure 2x2}.]
{\includegraphics[width=.2\textwidth]{file006}} \quad
\subfloat[][\emph{Figure 2x3}.]
{\includegraphics[width=.2\textwidth]{file007}} \quad
\subfloat[][\emph{Figure 2x4}.]
{\includegraphics[width=.2\textwidth]{file008}} \\
\subfloat[][\emph{Figure 3x1}.]
{\includegraphics[width=.2\textwidth]{file009}} \quad
\subfloat[][\emph{Figure 3x2}.]
{\includegraphics[width=.2\textwidth]{file010}} \quad
\subfloat[][\emph{Figure 3x3}.]
{\includegraphics[width=.2\textwidth]{file011}} \quad
\subfloat[][\emph{Figure 3x4}.]
{\includegraphics[width=.2\textwidth]{file012}} \\
\caption{This is the caption.}
\label{fig:subfig}
\end{figure}