我有很多图:尺寸相同,但标题不同。我该如何解决图位置不同的问题?也许有一个简单的方法,因为我有很多图...
该文档是双面和单列的。
结果应如下所示(由于标题的长度不同,我无法水平对齐子图),但一页只有一个图,没有任何子图。
答案1
最简单的方法可能就是将其包装\caption
在具有特定(待确定)高度的小页面中。
就像是:
\fbox{\begin{minipage}[t][5cm][t]{1.0\linewidth}
\caption{This is a short caption}
\end{minipage}}
我添加了一个\fbox
来显示这个小页面的大小。当然,这6cm
部分必须调整,并且最好将其存储在一个长度内,这样我们就不必6cm
在整个过程中手动更改(留作练习)。
下面我添加了一个 MWE 来展示它是什么样子的。我还添加了如何重新定义\cation
以自动执行此操作。当然,这假设\caption
仅用于此 contrex,即没有非整页图的图,也没有表格。
\documentclass[a4paper]{memoir}
\usepackage{kantlipsum}
\begin{document}
sdf % to get to a LH page
\newpage
% \fbox added to show the size of the caption minipage
\begin{figure}[p]
\centering
\rule{0.7\textwidth}{10cm}
\fbox{\begin{minipage}[t][6cm][t]{1.0\linewidth}
\caption{\kant*[1]}
\end{minipage}}
\end{figure}
\clearpage
\begin{figure}[p]
\centering
\rule{0.7\textwidth}{10cm}
\fbox{\begin{minipage}[t][5cm][t]{1.0\linewidth}
\caption{This is a short caption}
\end{minipage}}
\end{figure}
\clearpage
% automatic, assumes \caption are only used in constructions like
% above
\let\normalcaption\caption
% this will loose the [] option for \caption
\renewcommand\caption[1]{
\begin{minipage}[t][5cm][t]{1.0\linewidth}
% now call the normal caption to make the formatting
\normalcaption{#1}
\end{minipage}
}
\begin{figure}[p]
\centering
\rule{0.7\textwidth}{10cm}
\caption{\kant*[1]}
\end{figure}
\clearpage
\begin{figure}[p]
\centering
\rule{0.7\textwidth}{10cm}
\caption{This is a short caption}
\end{figure}
\end{document}
答案2
\documentclass{article}
\usepackage{graphicx}
\usepackage{lipsum}
%---------------------------------------------------------------%
\usepackage{showframe}
\renewcommand\ShowFrameLinethickness{0.15pt}
\renewcommand*\ShowFrameColor{\color{red}}
%---------------------------------------------------------------%
\begin{document}
\begin{figure}[ht]
\vspace*{2cm}
\centering
\includegraphics[height=0.5\linewidth,width=\linewidth]{example-image-a}
\caption{\protect\lipsum*[11]}
\end{figure}
\clearpage
\begin{figure}[ht]
\vspace*{2cm}
\centering
\includegraphics[height=0.5\linewidth,width=\linewidth]{example-image-b}
\caption{short caption}
\end{figure}
\end{document}