问题描述
在有listing和figure的minipage环境中,我想要三个独立的标题a
,b
,c
evenly 如下图:
\documentclass[11pt]{article}
\usepackage{listings}
\usepackage{amsmath}
\usepackage{graphicx}
%\usepackage{caption}
\begin{document}
\begin{figure}[h!]
\noindent\begin{minipage}{0.3\textwidth}
\begin{lstlisting}[]
while(a < 0){
a++;
}
\end{lstlisting}
\caption{C program}
\end{minipage}%
\noindent\begin{minipage}{0.45\textwidth}
\begin{align*}
&F_1(a,b) \leftarrow a \le 0 \\
&F_2(a,b) \leftarrow F_1(a,b) \\
\end{align*}
\caption{Automata}
\end{minipage}%
\noindent\begin{minipage}{0.3\textwidth}
\includegraphics[scale=0.2]{example-image-a}
\caption{Relation}
\end{minipage}%
\caption{overal blablablablablabla caption}
\end{figure}
\end{document}
解决方法
您可以[b]
完全对齐您的小页面:
\documentclass[11pt]{article}
\usepackage{listings}
\usepackage{amsmath}
\usepackage{graphicx}
%\usepackage{caption}
\begin{document}
\begin{figure}[h!]
\noindent\begin{minipage}[b]{0.3\textwidth}
\begin{lstlisting}[]
while(a < 0){
a++;
}
\end{lstlisting}
\caption{C program}
\end{minipage}%
\noindent\begin{minipage}[b]{0.45\textwidth}
\begin{align*}
&F_1(a,b) \leftarrow a \le 0 \\
&F_2(a,b) \leftarrow F_1(a,b) \\
\end{align*}
\caption{Automata}
\end{minipage}%
\noindent\begin{minipage}[b]{0.3\textwidth}
\includegraphics[scale=0.2]{example-image-a}
\caption{Relation}
\end{minipage}%
\end{figure}
\end{document}
同样的技术也适用于 subfigure
:
\documentclass[11pt]{article}
\usepackage{listings}
\usepackage{amsmath}
\usepackage{graphicx}
\usepackage{subcaption}
\begin{document}
\begin{figure}[h!]
\noindent\begin{subfigure}[b]{0.3\textwidth}
\begin{lstlisting}[]
while(a < 0){
a++;
}
\end{lstlisting}
\caption{C program}
\end{subfigure}%
\noindent\begin{subfigure}[b]{0.45\textwidth}
\begin{align*}
&F_1(a,b) \\
\end{align*}
\caption{Automata}
\end{subfigure}%
\noindent\begin{subfigure}[b]{0.3\textwidth}
\includegraphics[scale=0.2]{example-image-a}
\caption{Relation}
\end{subfigure}%
\caption{text}
\end{figure}
\end{document}