我正在用 LaTex 准备一份课堂文档article
。我需要包含图形标题,但将图形本身作为单独的图像文件提供,而不将其合并到文档中。因此,我想在我的文件中创建一个包含所有图形标题的部分,但将它们的格式基本设置为与文档中其余“正常”文本一样。我相信有人问过类似问题之前,但想通过仅打印长标题来创建一个基本相同结尾的图表列表。但是,我想知道是否也可以通过修改参数来实现这一点\vspace
。
到目前为止,我已经为每个图表使用了以下代码:
\documentclass[12pt,a4paper]{article}
\usepackage[a4paper,left=2.6cm, right=2.9cm, top=3.5cm, bottom=3.5cm]{geometry}
\renewcommand{\baselinestretch}{2}
\usepackage{lineno}
\usepackage{caption}
\captionsetup{justification=raggedright,singlelinecheck=false}
\begin{document}
\linenumbers
\section{Some section}
Some text
\section{Figure legends}
\begin{figure}[!h]
\internallinenumbers
\caption{This is my caption.}
\label{fig:myfig}
\vspace{-1.2cm}
\end{figure}
\begin{figure}[!h]
\internallinenumbers
\caption{This is my other caption.}
\label{fig:myfig1}
\vspace{-1.2cm}
\end{figure}
\clearpage
\end{document}
这给出的输出与我需要的有些相似。但是,我遇到的问题是,我的最后一个标题与其他标题不适合放在同一页上,因此位于下一页的中间。我尝试用 替换\begin{figure}[!h]
,\begin{figure}[!t]
但这并没有产生我需要的输出。相反,我希望标题从新页面的第一行开始。另外,我想知道是否有办法将不同标题之间的间距设置为等于其余文本中的行间距。
答案1
figure
考虑到您的要求,听起来您根本不需要环境。figure
环境是一个浮动环境,这意味着 LaTeX 可以移动它以适应页面的整体布局,这就是您看到意外定位的原因。
由于您没有包含任何图像,因此您只需使用包\captionof
中的命令caption
在图形环境之外创建标题即可。这会将标题视为普通文本。
这是您调整后的代码:
\documentclass[12pt,a4paper]{article}
\usepackage[a4paper,left=2.6cm, right=2.9cm, top=3.5cm, bottom=3.5cm]{geometry}
\renewcommand{\baselinestretch}{2}
\usepackage{lineno}
\usepackage{caption}
\captionsetup{justification=raggedright,singlelinecheck=false}
\begin{document}
\linenumbers
\section{Some section}
Some text
\section{Figure legends}
\internallinenumbers
\captionof{figure}{This is my caption.}
\label{fig:myfig}
\internallinenumbers
\captionof{figure}{This is my other caption.}
\label{fig:myfig1}
\clearpage
\end{document}
该\captionof
命令有两个参数:第一个是标题的类型(在本例中为“figure”),第二个是实际的标题文本。此命令将使标题看起来像普通文本,并且不会在标题前后造成任何不寻常的空格。
答案2
这将创建一个“普通”标题文件,每页一个,无边距。您也可以在此处添加图像。但由于这是一个单独的文件,因此\label
不会有任何用处。我\textwidth
从您的文档中获取了这些信息。
不确定行号的含义,除非标题计入总行数(而不是作为图像的一部分)。
\documentclass[multi={figure}]{standalone}
\usepackage{graphicx}
\usepackage{caption}
\captionsetup{justification=raggedright,singlelinecheck=false, position=below}
\makeatletter
\renewenvironment{figure}{\def\@captype{figure}\minipage{441.01773pt}}{\endminipage}
\makeatother
\begin{document}
\begin{figure}
\caption{This is my caption.}
\end{figure}
\begin{figure}
\caption{This is my other caption.}
\end{figure}
\end{document}