宽度与 hsize 相同的 hbox 内部的 vbox 溢出

宽度与 hsize 相同的 hbox 内部的 vbox 溢出

在学习使用 Plain TeX 时,我尝试创建一个带框架的段落。我从以下代码开始,该代码旨在限制段落宽度,但仍能使换行机制正常工作(以便我以后可以使用\vline\hline创建框架):

\hbox to 10cm{
    \vbox{
        \hsize 10cm
        test
    }
}
\bye

当我使用此代码时,我收到一个溢出\hbox错误

Overfull \hbox (4.44443pt too wide) detected at line 6
 [] |

当我使用较长的文本时,它会被正确地分成宽度为 10 厘米的单独行。

为什么会出现溢出?我遗漏了什么?

答案1

可以这样想:括号后的空格或换行符{不会}被忽略。您需要使用%以下命令来解决这个问题:

\hbox to 10cm{%
    \vbox{%
        \hsize 10cm
        test
    }%
}%
\bye

这不会生成过满的消息。

{同样,将所有代码放在一行(一般我不建议这样做) - 在或之后没有空格或换行符}- 也可以避免出现此问题:

\hbox to 10cm{\vbox{\hsize10cm test}}%
\bye

相关内容