我正在尝试用此代码在 2x2 矩阵中插入 4
\begin{figure}[H] \centering
\includegraphics[width=0.48\textwidth, keepaspectratio]{figure/s0}
\hspace{2mm}
\includegraphics[width=0.48\textwidth, keepaspectratio]{figure/s1}
\hfill
\includegraphics[width=0.48\textwidth, keepaspectratio]{figure/s2}
\hspace{2mm}
\includegraphics[width=0.48\textwidth, keepaspectratio]{figure/s3}
\hfill
\end{figure}
这些图片都是我用 Photoshop 制作的,尺寸为 400x250px。为什么没有正确对齐?是代码的问题吗?因为我用 Photoshop 检查过,它们的尺寸都一样。
答案1
您的代码中有几个不需要的空格。最好这样做
\documentclass{article}
\usepackage{graphicx}
\begin{document}
\begin{figure}[htp]
\centering
\includegraphics[width=0.48\textwidth, keepaspectratio]{example-image}%
\hspace{2mm}%
\includegraphics[width=0.48\textwidth, keepaspectratio]{example-image-a}
\vspace{2mm}\vspace{-\lineskip}
\includegraphics[width=0.48\textwidth, keepaspectratio]{example-image-b}%
\hspace{2mm}%
\includegraphics[width=0.48\textwidth, keepaspectratio]{example-image-c}
\end{figure}
\end{document}
假设您希望每幅图像之间的水平和垂直间距为 2 毫米,请创建两个段落并在它们之间添加垂直间距。还需要修复-\lineskip
。两侧的填充已由提供\centering
。
请注意%
不要添加不需要的空格。
您的代码发生了什么情况?
前两张图片之间有 2mm 的间隙加正常的单词间空间;这几乎填满了一行,因此第一个图像\hfill
与第二个图像后的单词间空间一起被丢弃(由于行尾)。由于\centering
,整行移动到右边距。
第二行则发生相反的情况,它被最后的居中粘连推到了左边距。