我想要一个宏来设置枚举列表中的每个枚举级别项,使得:
- 它出现在自己的页面上,
- 页面被裁剪为仅显示文本
因此,生成的 pdf 将具有可变的页面高度(如果在 latex 中是可能的(如果在 pdf 中也是可能的))。
我尝试使用该enumitem
软件包,但甚至无法将每个枚举单独放到一个页面上,为此我的 ME 如下所示。
\documentclass{article}
\usepackage{enumitem}
\begin{document}
\begin{enumerate}[itemsep={\newpage}]
\item This line should be on a page on its own the page height being just large enough to contain it.
\item This line also would like to be on a page on its own and the height of its page would also be just large enough to contain it.
\item Once again, same as above
\end{enumerate}
\end{document}
背景:使用 Microsoft 的 oneNote 时,可以将 pdf 的打印件插入笔记本。这似乎将 pdf 的每一页转换为单独的图像。因此,笔记本中的初始呈现是列表本身,但学生可以很容易地在项目之间创建空间。我的想法是列表是练习。学生可以自己组织解决练习所需的空间。
答案1
如果您愿意在项目末尾添加命令,您可以尝试类似这样的操作。(主要问题是 zsavepos 给出了文件底部的位置,因此如果您缩短页面,它就会改变)。
\documentclass{article}
\usepackage{eso-pic}
\usepackage{enumitem,lipsum}
\usepackage{zref-savepos}
\newcounter{myitem}
\newcommand\meti{%end of item
\stepcounter{myitem}\zsavepos{item-\number\value{myitem}}%
\pdfpageheight=\dimexpr \zposy{top-\number\value{myitem}}sp-\zposy{item-\number\value{myitem}}sp+2cm\relax\newpage}
\begin{document}
\AddToShipoutPictureFG{\AtPageUpperLeft{\zsavepos{top-\number\value{myitem}}}}
\begin{enumerate}[itemsep=\textheight]
\item This line should be on a page on its own the page height being just large enough to contain it.\meti
\item This line also would like to be on a page on its own and the height of its page would also be just large enough to contain it.\meti
\item Once again, same as above. \meti
\item \lipsum*[1]\meti
\end{enumerate}
\end{document}