如何让图像自动居中?

如何让图像自动居中?

我用:

\documentclss{mwrep}
...
\begin{figure}  
\includegraphics{a.jpg}
\caption[Long caption]{Caption}
\label{pic-a}
\end{figure}

我怎样才能使图像始终显示在页面的中心?(更具体地说:图像的中心应位于左边缘和右边缘之间 - 我使用不同的左边缘和右边缘)。我不想\begin{figure}在我的文档中的每个边缘后放置任何东西。

重要提示:我不想浪费整个页面的正中央的一张图片。我只想水平对齐。(左 <-> 右)

答案1

关于你的第一个问题:使用floatrow包——它默认将浮动内容居中。

\documentclass{article}

\usepackage[draft]{graphicx}
\usepackage{floatrow}

\begin{document}

The first paragraph.

\begin{figure}  
\includegraphics{a.jpg}
\caption[Long caption]{Caption}
\label{pic-a}
\end{figure}

And the second.

\end{document}

如果您出于某种原因不想加载floatrow,您可以将以下内容添加到序言中(感谢 egreg 提供的提示):

\makeatletter
\g@addto@macro\@floatboxreset\centering
\makeatother

编辑:我的示例中的图形仅垂直居中,因为我没有添加任何虚拟文本。示例已更正。

答案2

将以下内容添加到文档序言中:

\makeatletter
\g@addto@macro\@floatboxreset{\centering}
\makeatother

开始每座浮筒建筑结束\@floatboxreset使用如下所示的宏(来自latex.ltx):

\def \@floatboxreset {%
        \reset@font
        \normalsize
        \@setminipage
}

执行上述建议\centering在末尾添加\@floatboxreset,有效地将其更改为

\def \@floatboxreset {%
        \reset@font
        \normalsize
        \@setminipage
        \centering
}

\centering从而消除了一直指定的要求。

答案3

如果您使用 documentclass memoir,可以使用以下方式设置全局浮动调整:\setfloatadjustment{<float>}{<adjustment>}例如,

\documentclass{memoir}
\setfloatadjustment{figure}{\centering}
\begin{document}
  \begin{figure}  
    \includegraphics{image}
    \caption[LoF caption]{Regular caption}
    \label{fig:image}
  \end{figure}
\end{document}

答案4

使所有图像居中的另一种方法是使用包\adjincludegraphics中的adjustbox并在任何本地选项之后声明center用于所有图像。但是,这也会添加center到所有其他\adjustbox宏和adjustbox环境中。我实际上只是想展示这个原则:

\documentclass{article}

\usepackage{lipsum}% for fummy text only
\usepackage[draft]{graphicx}% remove 'draft' for a real document
\usepackage{adjustbox}
\adjustboxset*{center}
\begin{document}

\lipsum[1]

\begin{figure}
\adjincludegraphics[width=5cm]{a.jpg}
\caption[Long caption]{Caption}
\label{pic-a}
\end{figure}

\lipsum[2]

\begin{figure}
\adjincludegraphics{b.jpg}
\caption[Long caption]{Caption}
\label{pic-b}
\end{figure}

\lipsum[3]

\begin{figure}
\adjincludegraphics{c.jpg}
\caption[Long caption]{Caption}
\label{pic-c}
\end{figure}


\end{document}

相关内容