在 expl3 中,当内容放在页脚或浮动时,如何重置 seq 变量?

在 expl3 中,当内容放在页脚或浮动时,如何重置 seq 变量?

回答解释如何使用expl3存储seq变量来稍后将内容放置在文档中。我想编写一个命令来:

  • 将第一个参数写入页面的主流程。
  • 将第二个参数写入页面底部的浮动元素的内容。(tcolorbox本例中为一个框,但不一定。)此参数实际上只是一个句子,命令应将它们连接成一个段落。
  • 仅当当前页面上有足够的空间时才写入这些内容。如果没有,则应使用第一个参数开始一个新页面,并在底部创建一个新的浮动元素,其中包含第二个参数。

这里可能expl3没有必要,在这种情况下,我欢迎其他方法。

答案1

到目前为止还没有完整的解决方案,只有测试。

\documentclass{article}

\usepackage[a4paper,tmargin=1.5cm,bmargin=1.5cm,rmargin=1.5cm,lmargin=1.5cm]{geometry}
\usepackage{xparse}

\usepackage[most]{tcolorbox}


\newtcolorbox[auto counter]{myfooterbox}[1][]{
  colback=yellow!50!white,float,floatplacement={b},title={footer box \thetcbcounter},coltext=black,#1}


\NewDocumentCommand{\writemystuff}{O{}+m+m}{%
    #2
  \vfill %\push the box to the bottom
  \begin{myfooterbox}[#1]
    #3
  \end{myfooterbox}
}




\usepackage{blindtext}




\begin{document}

\writemystuff{\blindtext[3]}{\blindtext}


\writemystuff{\blindtext}{\blindtext}



\end{document}

相关内容