\hspace*
Почему при использовании вместо наблюдается разница в выводе, \hspace
несмотря на то, что ширина подрисунков и горизонтальный интервал добавляются к \textwidth
?
\documentclass{article}
\usepackage{subcaption,mwe}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-a}
\end{subfigure}%
\hspace{0.05\textwidth}
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-b}
\end{subfigure}%
\hspace{0.05\textwidth}
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-c}
\end{subfigure}
\end{figure}
\begin{figure}
\centering
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-a}
\end{subfigure}%
\hspace*{0.05\textwidth}
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-b}
\end{subfigure}%
\hspace*{0.05\textwidth}
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-c}
\end{subfigure}
\end{figure}
\end{document}
решение1
Строка изображений слишком широка для строки. \hspace
вводит точку разрыва, поэтому строка прерывается после B, а пробел в начале следующей строки отбрасывается.
без \hspace*
переноса строки, поэтому они остаются на одной строке, создавая переполненную строку
Overfull \hbox (4.44969pt too wide) in paragraph at lines 21--32
Он переполнен из-за пробелов между словами, добавленных после \hspace
.
\documentclass{article}
\usepackage{subcaption,mwe}
\begin{document}
\begin{figure}
\centering
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-a}
\end{subfigure}%
\hspace{0.049\textwidth}%
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-b}
\end{subfigure}%
\hspace{0.049\textwidth}%
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-c}
\end{subfigure}
\end{figure}
\begin{figure}
\centering
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-a}
\end{subfigure}%
\hspace*{0.05\textwidth}%
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-b}
\end{subfigure}%
\hspace*{0.05\textwidth}%
\begin{subfigure}[t]{0.3\textwidth}
\includegraphics[width=\linewidth]{example-image-c}
\end{subfigure}
\end{figure}
\end{document}
Примечание с \hspace{0.05\textwidth}
ошибкой округления делает его немного переполненным, поэтому мне пришлось немного уменьшить его. На практике лучше не использовать такие фиксированные длины и просто использовать \hfill
между изображениями, это расширит пространство между изображениями, не беспокоясь об ошибке округления.