![使用调整框将宽 2x2 图形居中](https://linux22.com/image/349684/%E4%BD%BF%E7%94%A8%E8%B0%83%E6%95%B4%E6%A1%86%E5%B0%86%E5%AE%BD%202x2%20%E5%9B%BE%E5%BD%A2%E5%B1%85%E4%B8%AD.png)
我有四个大图形,我想将它们平铺为 2x2。这些图形需要超出 \textwidth 边界,但我仍然希望 2x2 平铺位于页面中央。查看中心图形的宽度大于 \textwidth我只能\centerfloat
从这个答案以产生期望的结果。
我希望能够使用以下adjustbox
包来实现这一点这个答案,但我无法创建两行数字。是否可以从adjustbox
包中获取此功能?我尝试使用该minipage
选项,但没有成功。这是我目前得到的。
\documentclass{article}
\usepackage{subcaption}
\usepackage{mwe}% for this example only
\usepackage{adjustbox}
\begin{document}
\begin{figure}
\begin{adjustbox}{center}
\centering
\begin{subfigure}{.6\textwidth}
\includegraphics[width=1.0\linewidth]{example-image}
\end{subfigure}%
\begin{subfigure}{.6\textwidth}
\includegraphics[width=1.0\linewidth]{example-image}
\end{subfigure}
\begin{subfigure}{.6\textwidth}
\includegraphics[width=1.0\linewidth]{example-image}
\end{subfigure}%
\begin{subfigure}{.6\textwidth}
\includegraphics[width=1.0\linewidth]{example-image}
\end{subfigure}
\end{adjustbox}
\end{figure}
\end{document}
答案1
这是使用 的版本\makebox
。
注意: aminipage
会重置\textwidth
,但 a\parbox
不会。
\documentclass{article}
\usepackage{graphicx}
\usepackage{subcaption}
\usepackage{showframe}% MWE only
\begin{document}
\begin{figure}
\makebox[\textwidth][c]{\parbox{1.2\textwidth}{%
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}%
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}%
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}
}}
\caption{A $2\times2$ arrangement}
\end{figure}
\end{document}
这是使用 的版本adjustbox
。
\documentclass{article}
\usepackage[export]{adjustbox}
\usepackage{subcaption}
\begin{document}
\begin{figure}
\begin{adjustbox}{center}
\parbox{1.2\textwidth}{\lineskip=0pt
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}%
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}%
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}}
\end{adjustbox}
\caption{Caption}
\label{fig:key}
\end{figure}
\end{document}
这是一个不使用任何方法的版本,
\documentclass{article}
\usepackage{graphicx}
\usepackage{subcaption}
\begin{document}
\begin{figure}
\leftskip=-0.1\textwidth
\rightskip=-0.1\textwidth
\lineskip=0pt
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}%
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}%
\begin{subfigure}{.6\textwidth}
\includegraphics[width=\linewidth]{example-image}
\end{subfigure}
\caption{Caption}
\label{fig:key}
\end{figure}
\end{document}
答案2
只有在有子标题的情况下才需要subfigure
。否则,只需将图像视为大写字母即可。
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{figure}
\centering
%%% local settings
\renewcommand{\arraystretch}{0}
\setlength{\tabcolsep}{0pt}
\begin{tabular}{cc}
\includegraphics[width=0.4\linewidth]{example-image} &
\includegraphics[width=0.4\linewidth]{example-image} \\
\includegraphics[width=0.4\linewidth]{example-image} &
\includegraphics[width=0.4\linewidth]{example-image}
\end{tabular}
\caption{A $2\times2$ arrangement}
\end{figure}
\end{document}
通过局部删除 中的行间距(\renewcommand{\arraystretch}{0}
和 列间距(\setlength{\tabcolsep}{0pt}
)tabular
,图像将彼此相邻放置,没有空间。由于设置是在一个组(环境figure
)中完成的,因此 之后将恢复这些值\end{figure}
,无需手动重置它们。
如果您想要超大尺寸的图片,请将其放在tabular
一个框中:
\makebox[\linewidth]{%
\begin{tabular}{cc}
\includegraphics[width=0.6\linewidth]{example-image} &
\includegraphics[width=0.6\linewidth]{example-image} \\
\includegraphics[width=0.6\linewidth]{example-image} &
\includegraphics[width=0.6\linewidth]{example-image}
\end{tabular}%
}