我有一个由枚举组成的长文档。每个项目由几行组成,可能还包括其他元素,如图形和列表。文档类型要求每个项目都显示在单个页面上,而项目中没有分页符。页面底部未使用的空白区域是可以接受的。
这是一个例子
\documentclass[a5paper,12pt]{article}
\usepackage{blindtext}
\begin{document}
\begin{enumerate}
\item \blindtext
\item \blindtext % don't break this apart
\item very long text here
\end{enumerate}
\end{document}
我知道samepage
环境的解决方案,以及minipage
的解决方案。问题是我不能将个人\item
包装到这些环境中,这是我需要的。
needspace
有效,但我需要手动确定每个项目的垂直范围(至少这是我的想法)。
答案 0 :(得分:0)
这可能对您有所帮助:调整flow --model cfg/yolo.cfg --load bin/yolo.weights --savepb
环境的边距,以便不会破坏文本。
以下是关于如何对商品化环境进行此类操作的一个答案:https://tex.stackexchange.com/questions/170525/itemize-left-margin
答案 1 :(得分:0)
您可以通过以下自动化为每个\clearpage
发出\item
:
\documentclass[a5paper,12pt]{article}
\usepackage{blindtext}
\let\oldenumerate\enumerate% Store \begin{enumerate} in \begin{oldenumerate}
\let\endoldenumerate\endenumerate% Store \end{enumerate} in \end{oldenumerate}
\renewenvironment{enumerate}
{\let\olditem\item% Store \item in \olditem
\renewcommand{\item}{\clearpage\olditem}% Update \item
\oldenumerate}% \begin{enumerate}
{\endoldenumerate}% \end{enumerate}
\begin{document}
\begin{enumerate}
\item \blindtext
\item \blindtext % don't break this apart
\item very long text here
\end{enumerate}
\end{document}
上述代码更新了enumerate
环境,其方式是将\item
代码更改为等同于\clearpage\item
。这可确保每个\item
将在新页面上开始,可能会在底部留下空白。
答案 2 :(得分:0)
我最终做的是使用enumitem包并将枚举分解为小部件中的部分:
\documentclass[a5paper,12pt]{article}
\usepackage{blindtext}
\usepackage{enumitem} % modified itemize
\begin{document}
\begin{minipage}{\linewidth}
\begin{enumerate}[series=task,start=1,leftmargin=*,resume]
\item \blindtext
\end{enumerate}
\end{minipage}
\begin{minipage}{\linewidth}
\begin{enumerate}[resume*=task]
\item \blindtext
\end{enumerate}
\end{minipage}
\end{document}
我更喜欢不那么复杂的东西,但至少它没有人工分页。