广告 1.

广告 1.

考虑以下 LaTeX 手稿,它red在序言中将文档颜色设置为,然后继续创建一个文本框,使用它,然后将其发送出去。

\documentclass{article}
\usepackage{xcolor}
\color{red}
\begin{document}
    \newbox\mybox%
    \setbox\mybox\hbox{Hello, world!}%
    \copy\mybox%
    \shipout\box\mybox%
\end{document}

生成的 PDF 文档包含两页。第一页中,框中的文本呈现为黑色:

文字为黑色

而在第二个中它呈现为红色:

红色文字

我推测第一页是由该\shipout命令生成的。

  1. 为什么发货页面的文字颜色不是红色?
  2. 为什么命令是在使用盒子后给出的,而发货页面是文档的第一页\shipout?发货页面不应该出现在使用盒子的页面之后吗?

答案1

广告 1.

\setbox\mybox\hbox{Hello, world!}%
\shipout\box\mybox

该框不包含任何颜色特效。PDF 页面开头的默认颜色为黑色,因此结果为黑色。

根据经验或规则,使用 LaTeX 命令来设置框:

\documentclass{article}
\usepackage{xcolor}
\color{red}
\begin{document}
    \newbox\mybox%
    \sbox\mybox{Hello, world!}%
    \usebox\mybox%
    \shipout\box\mybox%
\end{document}

然后,\sbox在框的开始处设置当前颜色,两种情况下的结果都是红色。

广告 2。

\shipout立即生效。常规页面由稍后调用的输出例程输出,例如,当页面已满时。

相关内容