大家好,又见面了,我是你们的朋友全栈君。
最近需要用latex插入多张图片,达到这么一个效果。
但是我原来只插入过一张图片(图片内容来源于网络;是国漫一人之下的宝儿姐。强推这部国漫~),代码如下,效果如图:
\begin{figure}
\centering
\includegraphics[height=4.5cm,width=9.5cm]{111.eps}
\caption{pic1}
\label{2}
\end{figure}
所以我去网上搜索了一些资料,找到了一些关于在latex中插入多个图片的方法,首先我们来看第一种方法,也是我一开始用的方法:利用latex的subfigure排版,并排放置多张图。(使用宏包\usepackage{graphicx}以及\usepackage{subfigure} 谢谢@那些空洞的日子指出拼写错误)
源码如下,达到效果如下:
\begin{figure}[htbp]
\centering
\subfigure[pic1.]{
\begin{minipage}[t]{0.25\linewidth}
\centering
\includegraphics[width=1in]{111.eps}
%\caption{fig1}
\end{minipage}%
}%
\subfigure[pic2.]{
\begin{minipage}[t]{0.25\linewidth}
\centering
\includegraphics[width=1in]{111.eps}
%\caption{fig2}
\end{minipage}%
}%
\subfigure[pic3.]{
\begin{minipage}[t]{0.25\linewidth}
\centering
\includegraphics[width=1in]{111.eps}
%\caption{fig2}
\end{minipage}
}%
\subfigure[pic4.]{
\begin{minipage}[t]{0.25\linewidth}
\centering
\includegraphics[width=1in]{111.eps}
%\caption{fig2}
\end{minipage}
}%
\centering
\caption{ pics}
\end{figure}
其中0.25\linewidth是你插入图片的幅度(我理解为这副图的宽占1/4行,你下张图并排插入的话需要从1/4行处往后开始插),相当于0.25倍的当前latex中规定的一行的长度(感谢@heathrine指正),width=1in是指图片的宽度。它可以在一个大图的框架里面插入多个小图,自动编号为a,b,c,d….并对小图分别描述。
但是这个效果还不是我想要的。于是我就想用一个subfigure里面包裹两个pic看看效果
结果并没有达到我想要的效果。
这样的话就只是将其分成两个部分,只能对对应的两个部分进行描述,而不能对四张图每张都进行描述了。
然后我在latex代码中每隔两个subfigure打一个回车键,奇妙的事情就发生了!
\begin{figure}[htbp]
\centering
\subfigure[pic1.]{
\begin{minipage}[t]{0.25\linewidth}
\centering
\includegraphics[width=1in]{111.eps}
%\caption{fig1}
\end{minipage}%
}%
\subfigure[pic2.]{
\begin{minipage}[t]{0.25\linewidth}
\centering
\includegraphics[width=1in]{111.eps}
%\caption{fig2}
\end{minipage}%
}%
%这个回车键很重要 \quad也可以
\subfigure[pic3.]{
\begin{minipage}[t]{0.25\linewidth}
\centering
\includegraphics[width=1in]{111.eps}
%\caption{fig2}
\end{minipage}
}%
\subfigure[pic4.]{
\begin{minipage}[t]{0.25\linewidth}
\centering
\includegraphics[width=1in]{111.eps}
%\caption{fig2}
\end{minipage}
}%
\centering
\caption{ pics}
\end{figure}
然后效果图如下:
这样就达到了我的效果,既能将图片分成四个小图片,也能对四个小图片分别进行描述。
为什么打回车就能隔开了呢?因为文档(下面那个链接)里面说:One such is the spacing between figures. By default, the methods described below leave little or no space between two sub-figures. Therefore, horizontal space needs to be added manually (if required) using, e.g., the standard lengths \quad and \qquad or the \hspace command.
如果不用上述方式,用下面这种也能达到对应的效果。(PS:这种方式看起来简洁一些)
\begin{figure}[htbp]
\centering
\subfigure[pic1.]{
\includegraphics[width=5.5cm]{111.eps}
%\caption{fig1}
}
\quad
\subfigure[pic2.]{
\includegraphics[width=5.5cm]{111.eps}
}
\quad
\subfigure[pic3.]{
\includegraphics[width=5.5cm]{111.eps}
}
\quad
\subfigure[pic4.]{
\includegraphics[width=5.5cm]{111.eps}
}
\caption{ pics}
\end{figure}
下面是一篇关于latex插入图片的文章,贴出来大家看一下:点击打开链接
另外,还有这么一种方法,大家也可以试一试:
\begin{figure}[htbp]
\centering
\subfigure[1]{
\begin{minipage}{4.5cm}
\centering
\includegraphics[width=6cm]{4a.eps}
\caption{World Map}
\end{minipage}%
}%
\subfigure[2]{
\begin{minipage}{7cm}
\centering
\includegraphics[width=6cm]{4b.eps}
\caption{Concrete and Constructions}
\end{minipage}
}
\subfigure[1]{
\begin{minipage}{4.5cm}
\centering
\includegraphics[width=6cm]{4a.eps}
\caption{World Map}
\end{minipage}%
}%
\subfigure[2]{
\begin{minipage}{7cm}
\centering
\includegraphics[width=6cm]{4b.eps}
\caption{Concrete and Constructions}
\end{minipage}
}
\caption{side by side figure}
\end{figure}
如不能正常并排排列,可以尝试改一下width参数。
———————-2020-03-05更新——————
来自评论区的小伙伴@不染。的回复:po主的代码很有用,解决了我的问题,不过现在通行的主要是subfig宏包代替subfigure,而且使用subfig宏包注意把po主代码中的\subfigure改成\subfloat.
大家也可以试试这种方法哈,感谢不染。
———————-2020-03-16更新——————
给自己打个广告,哈哈哈。
生活中也不只是工作呀,如果感兴趣的话可以关注我的个人公众号,里面包括:美食、游记等原创内容。
有什么问题欢迎在评论区交流,希望能够帮到大家~
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132664.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...