Evian Zhang's
naive blog

LaTeX入门(八)——图片

在之前一系列的文章中,我们从小到大,从字、段、章节、页面的角度介绍了LaTeX的使用原理,就像是我们设计衣服,从针线,到布匹,再到衣裳的设计。正如衣服还需要各种装饰物点缀,那么,从这篇文章起,我们就开始介绍各个局部的小方面了。这篇文章,介绍的是图片的插入。

插入图片

要在文档中插入图片,需要 graphicx 宏包。此外,为了让图片出现在正确的位置,需要 float 宏包。因此,在导言区中加上

\usepackage{graphicx}
\usepackage{float}

接着,如果我们要插入的图片的名字是pic.png, 那么在我们正文中要插入图片的位置加上如下代码:

\begin{figure}[H]
\centering
\includegraphics{pic.png}
\caption{Title of picture}
\end{figure}

这里注意一点,如果要将图片插入到文档中,建议将图片拷贝到.tex文件的同一级文件夹中,否则需要在 \includegraphics{} 的参数中填写绝对路径。

\caption{} 指令的作用,是在其对应的位置(位于 \includegraphics{} 前就是图片上方,后就是图片下方)产生“图x:Title of picture”的语句。其中x是图片的编号。关于图片的编号,后面的文章会统一说。

可以给 \includegraphics{} 加上option列表以调整图片的大小。比如说,我想插入的图片是原图片等比例缩小为原来的0.8,则可以写成

\includegraphics[scale=0.8]{pic.png} 

如果我是想专门调整长宽,则可以把 scale=0.8 换成 height=xxx, width=xxx 这样来实现。

此外,关于 \caption{} ,我们可以对其字体、文字进行相关设置。这里需要我们使用 caption 宏包。我们首先在导言区中写上

\usepackage{caption}

然后在导言区中使用 \captionsetup{} 进行相关设置。

由于我们这里需要设置的是 figure 浮动体的caption,因此,我们需要特别注明 captionsetup[figure]{} . 如果我们需要改变标题中的“图x”,让它变成“Picture x”或者其他文字,在大括号中可以写 name=Picture 来实现。如果我们要改变这个caption整体的字号、字体,比如说全都变成 Large 字号,意大利斜体,则可以在大括号中写 font={Large, it} . 值得注意的是这里的字号只能设置成LaTeX内置的那几个字号(可以参见之前的文章),而不能自己设置字号。其他参数均可以看 caption 宏包的说明。

并排图片

将两个图片并排在一起,需要一定的技巧。假设我们有两张图片pic1.png和pic2.png, 我们要将它们并排,则可以在正文中使用如下语句:

\begin{figure}[H]
\centering
\begin{minipage}{0.48\textwidth}
\centering
\includegraphics{pic1.png}
\caption{Title of pic1}
\end{minipage}
\begin{minipage}{0.48\textwidth}
\centering
\includegraphics{pin2.png}
\caption{Title of pic2}
\end{minipage}
\end{figure}

如果我们要并排三张图,则将 0.48\textwidth 变成 0.32\textwidth ,以此类推。

过宽的图片

有时候我们会遇到过宽的图片,由于我们之前说的页面设置中存在左边距,所以会出现以下这种尴尬情况:

这时,我们需要使用一个叫 adjustbox 的宏包。在导言区加上一句

\usepackage[export]{adjustbox} 

然后在正文中使用

\begin{figure}[H]
\centering
\includegraphics[center]{pic.png}
\end{figure}

即可。也就是说,在 \includegraphics[]{} 的中括号中,加上一句 center 就能实现图片居中了。如图:

文字环绕图片

我不太建议在正经论文中使用文字环绕图片,而且LaTeX在这方面做的也并不是尽善尽美。要使用文字环绕图片,需要在导言区使用宏包 wrapfig 。即在导言区中加上一句

\usepackage{wrapfig} 

然后在正文中要加入图片的地方使用语句

\begin{wrapfigure}{position}{width}
\centering
\includegraphics{pic.png}
\end{wrapfigure}

其中position可以有 r 或者 l 两种选项,分别对应在文字右侧和在文字左侧。 width 是这个浮动体的宽度(不是这个图片的宽度),比图片宽度略大一些。因此,比如说我要一个在文字右边的,宽度为 0.5\textwidth 的浮动体,可以写成

\begin{wrapfigure}{r}{0.5\textwidth}
\centering
\includegraphics{pic.png}
\end{wrapfigure}