[LaTeX] 用minipage來排版多張圖片(子圖片)! (以及用subfigure而不是subfloat來排版代碼型圖片)


[LaTeX] 用minipage來排版多張圖片(子圖片)! (以及用subfigure而不是subfloat來排版代碼型圖片)

 

 

前言

上一篇寫了[LaTeX] 字圖片復雜排版的博客,剛剛找到了更好更簡潔方便的方法!完全可以取而代之,因此在此記錄之。

1 代碼

就是zhei么簡單,代碼如下:


\documentclass{article}
\usepackage{subfig,graphicx}
\begin{document}

\begin{figure}
\begin{minipage}[b]{.5\linewidth}
    \centering
    \subfloat[][Genelec 8020 CPM]{\label{Genelecs:Genelec 8020 AP}\includegraphics[width=.69\linewidth]{example-image-b}}

    \subfloat[][Genelec 8030 BPM]{\label{Genelecs:Genelec 8030 AP}\includegraphics[width=5cm]{example-image-c}}
\end{minipage} %\par
\medskip
\begin{minipage}[b]{.5\linewidth}
    \centering
    \subfloat[][Genelec 8010 AP]{\label{Genelecs:Genelec 8010 AP}\includegraphics[height=8cm,width=1\linewidth]{example-image-a}}
\end{minipage}

\caption{my fig}
\label{fig:Genelecs}
\end{figure}

\end{document}

 

效果如下:
在這里插入圖片描述

這么簡潔的代碼做出我想要的功能,看起來不得不說一句舒服。

2 小結

其實一開始根本沒想到minipage這么強大,在整理上一篇博客的文獻的時候,不小心看到了這個參考網頁:

看到了其中一個方案是用minipage做的,我稍作修改,便實現了我想要的排版。nice。

3 補充:用subfigure而不是subfloat來排版代碼型圖片

經過漫長的研究,我發現,如果子圖不是圖片,而是代碼(比如.list 格式的代碼文件,需要\lstinputlisting才能導入)的時候,subfloat實在太拉了,尤其是那個子圖片的子標題,都溢出文檔了,完全無法自動換行,也無法居中。實在可惜。

這時候我看到這樣的一句話:

I suggest you to use subfigure environment of the package subcaption .

參考:Latex subfloat the “subcaption” is one word in one line, how to make them together in only one line

眼眶差點濕潤了,結合之前這么多次失敗的經驗和勉強成功的嘗試,我終於找到了代碼型圖片如何排版的秘訣。

查了幾十個文獻,試了n多方案,這時候終於找到了不錯的一個辦法。實在是nice。

具體代碼:

\begin{figure}
    \begin{minipage}{0.45\linewidth}
        \centering
        \begin{subfigure}{1\linewidth}
            \label{t-SNE-a}
            \lstinputlisting[language=diff,linewidth={1\linewidth},frame=tb,basicstyle=\footnotesize\ttfamily]{figs/patch1.list}
            \caption{First very very long caption!}
        \end{subfigure}
    \end{minipage} %\par
    \medskip
    \begin{minipage}{0.5\linewidth}
        \centering
        \begin{subfigure}{1\linewidth}
            \label{t-SNE-a}
            \lstinputlisting[language=diff,linewidth={1\linewidth},frame=tb,basicstyle=\footnotesize\ttfamily]{figs/patch2.list}
            \caption{First very very long caption!}
        \end{subfigure}

        \begin{subfigure}{1\linewidth}
            \label{t-SNE-a}
            \lstinputlisting[language=diff,linewidth={1\linewidth},frame=tb,basicstyle=\footnotesize\ttfamily]{figs/patch3.list}
            \caption{First very very long caption!}
        \end{subfigure}
    \end{minipage}
    
    \caption{my fig}
    \label{fig:Genelecs}
\end{figure}

 

具體效果就不展示了,麻煩,還得打馬賽克。
算了算了,還是展示一下:

在這里插入圖片描述

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM