用于检测 pdftex 和 xetex 中的排版方向的原语?

用于检测 pdftex 和 xetex 中的排版方向的原语?

可能是重复的,但是...

...是否有原语检测所述基于 e-TeX 的引擎的当前排版方向是什么?

我知道设置\TeXXeTstate> 0 可以\beginR, \beginL, \endR, \endL实现环境方向,并且 pkgbidi提供用于此目的的条件。但是bidi不能与一起使用pdftex

答案1

没有办法做到这一点,因为与 omega/luatex 模型不同,方向不是排版列表(框)的属性,只有遇到时会改变方向状态的节点。

这意味着在执行 tex 宏时可能不知道方向,实际上可以在任一方向上设置相同的文本。

\documentclass{article}

\newbox\foo

\TeXXeTstate=1

\begin{document}

\sbox\foo{hello world}

\beginR \usebox\foo \endR

\usebox\foo

\end{document}

生产

在此处输入图片描述

hello world这里只是简单的文本,但它可以是任意复杂的宏来测试任何条件,当文本在另一个方向显示时,这些条件都不会重新执行。

相关内容