StarHub-SPA / Experiment_Report_SPA_Template

实验报告模板
9 stars 1 forks source link

关于本模板在使用minipage环境时出现的一个问题 #5

Open LIUZhentau opened 4 years ago

LIUZhentau commented 4 years ago

当我在编译这段代码后,左图的标注“高斯计”会显示不出来(读者可以自己找两张图试一下)。

\begin{figure}[H]
   \centering
   \begin{minipage}[t]{0.55\textwidth}
      \centering
      \includegraphics[width=7.2cm]{高斯计.jpg}
      \caption{高斯计}
      \label{fig:高斯计}
   \end{minipage}
   \begin{minipage}[t]{0.4\textwidth}
      \centering
      \includegraphics[width=4cm]{高斯计(亦称特斯拉计)放置于电磁铁间隙中心连线上.jpg}
      \caption{高斯计(亦称特\protect\\斯拉计)放置于电磁\protect\\铁间隙中心连线上}
      \label{fig:高斯计(亦称特斯拉计)放置于电磁铁间隙中心连线上}
   \end{minipage}
\end{figure}

在经过了两个多小时的debug后,我发现了问题的根源似乎是spaexp.cls中使用的floatrow宏包,因为floatrow会与float有冲突,导致浮动标注显示出错。 于是我将spaexp.cls

%%%浮动题标题
\usepackage{floatrow,caption}

以及

%%%浮动题标题
\floatsetup[table]{capposition=top} %全局设置图标题在下、表标题在上。
\floatsetup[figure]{capposition=bottom}

这两段代码删除,然后图片标注的显示就恢复了正常(这样肯定会失去一些设置,但本人能力有限,只能这么处理(笑cry~)) 向本哥反映了这个问题后,本哥在研究之后给出了一个更好的解决方法,就是在第一个\centering后加入这一条代码

\RawFloats

也就是代码变成这样:

\begin{figure}[H]
    \centering
    \RawFloats
    \begin{minipage}[t]{0.55\textwidth}
        \centering
        \includegraphics[width=7.2cm]{高斯计.jpg}
        \caption{高斯计}
        \label{fig:高斯计}
    \end{minipage}
    \begin{minipage}[t]{0.4\textwidth}
        \centering
        \includegraphics[width=4cm]{高斯计(亦称特斯拉计)放置于电磁铁间隙中心连线上.jpg}
        \caption{高斯计(亦称特\protect\\斯拉计)放置于电磁\protect\\铁间隙中心连线上}
        \label{fig:高斯计(亦称特斯拉计)放置于电磁铁间隙中心连线上}
    \end{minipage}
\end{figure}

我试验了一下,果然标注恢复了正常,而且也不用对spaexp.cls作任何改动。我个人的理解,这种方法的原理就是使floatrow暂时无效化。

Benature commented 4 years ago

补充说明一下,涛哥想要的的效果是左右两个图标题是独立的,如下👇 image 所以用 minipage

另:\RawFloats命令查自此处

点开查看minipage 的使用方法

\begin{figure}[htbp]
    \RawFloats
    \centering
    \begin{minipage}[t]{0.48\textwidth}
    \centering
    \includegraphics[width=6cm]{img/starhub.png}
    \caption{World Map}
    \end{minipage}
    \begin{minipage}[t]{0.48\textwidth}
    \centering
    \includegraphics[width=6cm]{img/starhub.png}
    \caption{Concrete and Constructions}
    \end{minipage}
\end{figure}

如若是需要两幅图共用一个caption,如下效果 image 则用subfigure

点开查看subfigure 的使用方法

\begin{figure}[htbp]
    \centering 
    \subfigure[子图 1]{
        \includegraphics[width=.4\textwidth]{./img/starhub.png}
    }%
    \subfigure[子图 2]{
        \includegraphics[width=.4\textwidth]{./img/starhub.png}
    }%
    \caption{共用的 caption}
    \label{f:}
\end{figure}