我在阻止代码块分页时遇到了困难。这是我的示例代码:
\begin{samepage}
\rule{\linewidth}{0.2pt}
{\bfseries \fontsize{14}{16.8}\selectfont TEST}\\
\vspace{1em}
{\bfseries TEST}\\
\begin {itemize}
\item ABC
\end{samepage}
\item XYZ
\end{itemize}
这里的想法是能够让标题和列表的一个元素始终在同一页面上,以避免混淆。
我也尝试过使用 \vbox{% ... },但没有成功。输出的错误如下:
l.xxx \end{samepage}
?
或者
extra } or forgotten
如果有必要的话,我会使用 XeLaTex 和 TexWorks 编辑器。
谢谢
答案1
LaTeX 分段命令可以防止在列表前分页,因此如果你使用标准标记,如
\documentclass{article}
\begin{document}
\hrule
\section*{Test}
A rule to move the heading close to the bottom
\rule{.5cm}{15.0cm}% test heading and two items
%\rule{.5cm}{15.1cm}% test heading and first item
%\rule{.5cm}{15.6cm}% test heading and first item
%\rule{.5cm}{15.7cm}% heading on second page
\subsection*{test}
\begin {itemize}
\item ABC
\item XYZ
\end{itemize}
\end{document}
然后你可以看到,通过增加规则长度,LaTeX 将在标题之前或第一个项目之后或列表之后中断,但不会在列表和标题之间中断。文档中不需要额外的标记。