如果将命令 \textdir TLT 和 \pardir TLT 插入到 \setbox 之前(垂直模式),则会产生与 \bodydir TRT 奇怪的效果

如果将命令 \textdir TLT 和 \pardir TLT 插入到 \setbox 之前(垂直模式),则会产生与 \bodydir TRT 奇怪的效果

这是对我上一个问题的补充tcolorbox 中是否包含 width=\linewidth 键,在构造上有何区别我注意到,如果我们在垂直模式下添加 \textdir TLT 或 \pardir TLT,则会出现问题,\setbox框内的文本仍然处于 TRT 方向,这与我们在水平模式下插入这两个命令不同

这是原语的正常效果 \bodydir\textdir还是\pardirluatex 错误?

\documentclass{book}
\usepackage[showframe]{geometry}
\newbox\mybox
\parindent=0pt
    
\begin{document}
    
\pagedir TRT \pardir TRT \textdir TRT \bodydir TRT % with \bodydir TLT issue do not appear
    
{\textdir TLT  \setbox\mybox=\hbox{t:\the\textdir - p:\the\pardir - b:\the\bodydir} 
\box\mybox} 
    
\leavevmode% 
{\textdir TLT \setbox\mybox=\hbox{t:\the\textdir - p:\the\pardir - b:\the\bodydir} 
\box\mybox}
    
\end{document}

在此处输入图片描述

答案1

希望那些了解这些事情的人能给出一个正确的答案,但答案的一部分与什么时候该命令生效,例如在当前段落完成后,而不是在段落期间。

执行\textdir TLT \pardir TLT\par\代替\textdir TLT \pardir TLT可以让下面的框拾取这些新的方向。

垂直和水平

平均能量损失

\documentclass{book}

\newbox\mybox
%\parindent=0pt

\begin{document}
All TRT:

\pagedir TRT \pardir TRT  \textdir TRT \bodydir TRT

\textdir TLT \pardir TLT \setbox\mybox=\hbox{First: t:\the\textdir; p:\the\pardir; b:\the\bodydir.} \box\mybox 

\ %<== Typeset a space = leave vertical mode 
\setbox\mybox=\hbox{Second:  t:\the\textdir; p:\the\pardir; b:\the\bodydir.} \box\mybox

\bigskip
All TRT, + mode switch after settings;

\pagedir TRT \pardir TRT  \textdir TRT \bodydir TRT

\textdir TLT \pardir TLT\par\  \setbox\mybox=\hbox{First: t:\the\textdir; p:\the\pardir; b:\the\bodydir.} \box\mybox 


\end{document}

请注意,在 Omega 中所有可能的理论方向和元素组合(我认为是 32 种)中,只有真实世界的组合(8 种?)被移植到 LuaTex 中,因此如果您想尝试其他组合,可能会出现一些异常。

相关内容