![\markboth 里面的 tikz \node 文本不起作用](https://linux22.com/image/402229/%5Cmarkboth%20%E9%87%8C%E9%9D%A2%E7%9A%84%20tikz%20%5Cnode%20%E6%96%87%E6%9C%AC%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
如果\markboth
在 tikz 节点文本中使用,\markboth
则不执行任何操作。
- pdflatex、xelatex 和 lualatex 的输出相同。
- 这能按预期工作吗?
\markboth
我注意到,像这样的内部组{\markboth{lefthead}{righthead}}
仍然有效。那么 tikz 做了什么来“阻止”\markboth
?
\documentclass{book}
\usepackage{tikz}
\begin{document}
\tikz\node[red] {\markboth{tikz left}{tikz right}};
contents \newpage contents
\end{document}
这个问题从何而来:
- 标准文档类使用类似
\chapter*{...\martboth{...}{...}}
内部的东西\tableofcontents
来生成目录的标题并改变标记。 - 在一些花哨的部分标题样式中,的参数
\chapter[*]{arg}
被传递给tikz
图纸。 - 因此,使用这些部分样式,
\tableofcontents
无法更改标记。
我知道如何解决问题,但我很好奇它失败的原因和方式。
答案1
一切tikzpicture
都在一个盒子里,正如@UlrikeFischer 评论的那样,
\mark
命令无法逃脱框
这在TeXbook,第23章第259页,第一段。