仅当其可描述内容位于页面上的特定位置时才展开下一个宏

仅当其可描述内容位于页面上的特定位置时才展开下一个宏

我正在寻找一个条件,检查视觉处理器是否将要扩展的宏的可描述内容放在放置内容的页面上的特定位置。

该条件应该可以帮助我完成以下任务:

我有连续的段落,它们之间用装饰符分隔。只有当装饰符不是当前页的第一个框并且不是当前页的最后一个框时,才应该处理每个装饰符。

如果我的有限知识是正确的TeX,文本处理器与实际页面上计算框的放置无关。因此,所质疑的条件应该指示视觉处理器将所需信息放入可在第二遍读取的辅助文件中。

是否可以向视觉处理器请求此类信息以便在源文件中对其进行操作?


附录:

尽管我需要一段时间才能掌握指令的效果,但是\leaders在您的帮助下我做到了!

不使用任何领导人指令的情况下它看起来是这样的:

在此处输入图片描述在此处输入图片描述

它看起来是这样的\cleaders

在此处输入图片描述在此处输入图片描述

\documentclass{article}

\usepackage[pdf]{pstricks}
\usepackage{psvectorian}
\usepackage{lipsum}

\newlength\TextDividerHeight
\setlength\TextDividerHeight{11ex}

\newcommand{\TextDivider}{%
    \cleaders
        \vbox to \TextDividerHeight{%
            \vfil
            \centering%
            \psvectorian[color=black,scale=0.35]{88}%
            \vfil
        }%
    \vskip \TextDividerHeight
}

\begin{document}

    \section{section}
    \lipsum[1]
    \TextDivider
    \lipsum[1]
    \TextDivider
    \lipsum[1]
    \TextDivider
    \lipsum[1]
    \TextDivider
    \lipsum[1]
    \TextDivider
    \lipsum[1]
    \TextDivider
    \lipsum[1]
    \TextDivider
    \lipsum[1]
    \TextDivider

    \section{section}

\end{document}

答案1

在此处输入图片描述

您对 TeX 处理模型的描述与其工作方式并不相符,实际上并不存在“视觉处理器”。

正如评论中提到的,你基本上希望装饰像一个空间一样,当空间被丢弃时也被丢弃,TeX 调用这样的构造 领导者

\documentclass{article}

\addtolength\textheight{-20\baselineskip}

\def\a{One two three four five six seven eight nine ten. }
\def\b{Red yellow blue green. }
\def\c{\a\a\b\b\a\b\a\b\a}

\def\sep{%
\par
\vspace{1pt plus 5pt}%
\xleaders
\hbox to \textwidth{\hss\S\S\S\hss}
\vskip\baselineskip
\vspace{1pt plus 5pt}%
}
\begin{document}


\c

\sep

\b\c

\sep

\a\a\c\b

\sep

\b\a\a\c\b

\sep

\c\c

\end{document}

相关内容