强制 4x8 子图的大图出现在一页中

强制 4x8 子图的大图出现在一页中

我有一个 4x8 子图的大图,我想将其强制放在一页中,因为现在它显示大约 20 个子图,其余的没有出现。

更新:

我曾尝试在这行中写入以下内容:

\includegraphics[height=0.8\textheight]

但它给出了一个错误

\begin{figure*}[t!]
\includegraphics[height=0.8\textheight]
\centering

答案1

代码

\documentclass[parskip]{scrartcl}
\usepackage[margin=25mm]{geometry}
\usepackage{tikz}

\begin{document}

\begin{figure}[p]
    \begin{tikzpicture}
        % calculate textwidth and textheight in cm; usually one would divide by 28.453, the 29 was chosen to avoid overfull boxes
        \pgfmathsetmacro{\mytextwidth}{\textwidth/29}\mytextwidth
        \pgfmathsetmacro{\mytextheight}{\textheight/29}\mytextheight

        % cycle through 32 numbers; you'll need to set the scaling only once; the "draw" in the node options is to show the boundaries of each picture, simply remove it once you found the right scaling factor
        % I didn't have 32 pictures ready, but if they're named systematically, you can use e.g.
        %       \includegraphics[scale=1.1]{figure\x.png}
        % which will produce "figure0.png" to "figure31.png".
        % If the numbers start at a different index, you can use
        %       \foreach \x [evaluate=\x as \y using \x+5] in {0,...,31}
        % and then
        %       \includegraphics[scale=1.1]{figure\y.png} 
        % to produce "figure5.png" to "figure36.png"
        \foreach \x in {0,...,31}
        {   \node[below right,draw] at ({\mytextwidth/4*mod(\x,4)},{\mytextheight/8*div(\x,4)}) {\includegraphics[scale=1.04]{book.png}};
        }
    \end{tikzpicture}
    \caption{The same book over and over.}
\end{figure}

\end{document}

输出

在此处输入图片描述

答案2

我假设您已经加载了 graphicx 之类的包。然后写入 \scalebox{0.75}{Your matrix of figures}。当然,0.75 只是正确值的近似值。

答案3

除了 Przemyslaw 的答案之外,您还可以使用以下scale密钥\includegraphics

\includegraphics[scale=.75]{path/to/image}

相关内容