防止乳胶文档中 item中的分页符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了防止乳胶文档中 item中的分页符相关的知识,希望对你有一定的参考价值。

我有一个由枚举组成的长文档。每个项目由几行组成,可能还包括其他元素,如图形和列表。文档类型要求每个项目都显示在单个页面上,而项目中没有分页符。页面底部未使用的空白区域是可以接受的。

这是一个例子

documentclass[a5paper,12pt]{article}
usepackage{blindtext}

egin{document}
egin{enumerate}
  item lindtext
  item lindtext % don't break this apart
  item very long text here 
end{enumerate}
end{document}

我知道samepage环境的解决方案,以及minipage。问题是我无法将个人items包装到这些环境中,这是我需要的。

needspace工作,但后来我需要手动确定每个项目的垂直范围(至少这是我的想法)。

答案

这可能会帮助您:调整enumerate环境的边距,以便文本不会被打破。

以下是关于如何在逐项化环境中进行此类操作的一个答案:https://tex.stackexchange.com/questions/170525/itemize-left-margin

另一答案

您可以通过以下自动化与每个clearpage发布item

enter image description here

documentclass[a5paper,12pt]{article}

usepackage{blindtext}

letoldenumerateenumerate% Store egin{enumerate} in egin{oldenumerate}
letendoldenumerateendenumerate% Store end{enumerate} in end{oldenumerate}

enewenvironment{enumerate}
  {letolditemitem% Store item in olditem
   
enewcommand{item}{clearpageolditem}% Update item
   oldenumerate}% egin{enumerate}
  {endoldenumerate}% end{enumerate}

egin{document}

egin{enumerate}
  item lindtext
  item lindtext % don't break this apart
  item very long text here 
end{enumerate}

end{document}

上面的代码以一种将enumerate代码改为等同于item的方式更新clearpageitem环境。这样可以确保每个item都会在新页面上开始,可能会在底部留下空白区域。

另一答案

我最后做的是使用enumitem包并将枚举分解成小部件中的部分:

documentclass[a5paper,12pt]{article}
usepackage{blindtext}
usepackage{enumitem}           % modified itemize

egin{document}
egin{minipage}{linewidth}
egin{enumerate}[series=task,start=1,leftmargin=*,resume]
  item lindtext
end{enumerate}
end{minipage}

egin{minipage}{linewidth}
  egin{enumerate}[resume*=task]
     item lindtext
  end{enumerate}
end{minipage}

end{document}

我更喜欢不太复杂的东西,但至少它没有手动分页。

以上是关于防止乳胶文档中 item中的分页符的主要内容,如果未能解决你的问题,请参考以下文章

在word中,怎样取消多页的分页符?单页可以选中分页符,再按删除键,要是有几百页呢?

WORD中怎样设置分页符

mpdf 扩展中的分页符:Yii

页面设置中“分页符”和“下一页”的区别是啥?

摆脱报告中的分页符

HTML表格中的分页符[重复]