图像超出了文本宽度?

图像超出了文本宽度?

我会尝试将六张图片放到同一行。但我的图片超出了文本行的宽度。我需要一些专家的帮助来解决这个问题。

    \begin{figure}[!htb]
  \makebox[\textwidth]{
   \begin{minipage}{0.16\textwidth}
     \centering
     \includegraphics[width=50mm]{420}
     \textbf{420}
   \end{minipage}\hfill
   \begin{minipage}{0.16\textwidth}
     \centering
     \includegraphics[width=50mm,scale=0.5]{421}
     \textbf{421}
   \end{minipage}\hfill
     \begin{minipage}{0.16\textwidth}
     \centering
     \includegraphics[width=50mm,scale=0.5]{422}
    \textbf{422}
   \end{minipage}
    \begin{minipage}{0.16\textwidth}
     \centering
     \includegraphics[width=50mm,scale=0.5]{423}
    \textbf{423}
   \end{minipage}\hfill
   \begin{minipage}{0.16\textwidth}
     \centering
     \includegraphics[width=50mm,scale=0.5]{424}
    \textbf{424}
   \end{minipage}\hfill
     \begin{minipage}{0.16\textwidth}
     \centering
     \includegraphics[width=50mm,scale=0.5]{425}
     \textbf{425}
   \end{minipage}
   }
\end{figure}

这是我收到的输出。

在此处输入图片描述

答案1

一些意见和建议:

  • 使用指令排版图像时\includegraphics,通常不建议使用绝对尺寸指令(例如)width=50mm,或原始图像尺寸的函数尺寸(例如)scale=0.5。(当然,绝不使用固定绝对宽度和选项scale。)将图像宽度设置为封闭宽度的一小部分是一个非常好的主意minipage;通常,设置width=1\textsize,即将两个宽度设置为相等,就可以了。

  • 请将 6 个环境的宽度minipage从更改0.16\textwidth0.16\linewidth。如果文档采用单列布局,则进行此更改无关紧要。但是,如果您使用的是两列或多列设置,则这很重要。通过使用\linewidth,您可以为文档的未来做好准备,以防万一您必须使用两列布局重新编译它。

  • 我还想建议您加载subcaption提供环境的包subfigure,并使用 6 个subfigure环境,而不是 6 个minipage环境。subfigure环境,就所有意图和目的而言,minipage环境“知道”如何处理\caption\caption*语句。(\caption*指令不会创建与标题文本配合的阿拉伯语或字母数字。)

  • 最后,也要删除该\makebox指令,因为它无论如何都没有任何用处,并且所有 6\centering条指令都已冗余。

在此处输入图片描述

\documentclass[demo]{article} % remove 'demo' option in real document
\usepackage{graphicx,subcaption}

\begin{document}
\begin{figure}[!htb]
\captionsetup[subfigure]{font=bf} % is this really needed?
\begin{subfigure}{0.16\linewidth}  
   \includegraphics[width=1\textwidth]{420}
   \caption*{420}
\end{subfigure}\hfill
\begin{subfigure}{0.16\linewidth} 
   \includegraphics[width=1\textwidth]{421}
   \caption*{421}
\end{subfigure}\hfill
\begin{subfigure}{0.16\linewidth}
   \includegraphics[width=1\textwidth]{422}
   \caption*{422}
\end{subfigure}\hfill % <-- this '\hfill' instance was missing in the OP's code
\begin{subfigure}{0.16\linewidth}
   \includegraphics[width=1\textwidth]{423}
   \caption*{423}
\end{subfigure}\hfill
\begin{subfigure}{0.16\linewidth}
   \includegraphics[width=1\textwidth]{424}
   \caption*{424}
\end{subfigure}\hfill
\begin{subfigure}{0.16\linewidth}
   \includegraphics[width=1\textwidth]{425}
   \caption*{425}
\end{subfigure}
\end{figure}
\end{document}

相关内容