如果我用注释掉的版本替换当前版本\setfoot
,我会得到:“缺少 \begin{document}”。我猜想这与它被正确刷新有关。
\documentclass{article}
\usepackage{lipsum}
\usepackage[pagestyles]{titlesec}
\newpagestyle{rest}
{%
\sethead{}{}{}
% \setfoot{Tenant Initials:\makebox[3em]{\hrulefill}}{}{Landlord Initials:\makebox[3em]{\hrulefill}} % Missing \begin{document}
\setfoot{Tenant Initials:\makebox[3em]{\hrulefill}}{}{}
}
\AtEndDocument{\thispagestyle{empty}}
\pagestyle{rest}
\begin{document}
\lipsum
\end{document}
答案1
好奇的问题。
解决方法:支撑有问题的部分。
\documentclass{article}
\usepackage{lipsum}
\usepackage[pagestyles]{titlesec}
\newpagestyle{rest}
{%
\sethead{}{}{}%
\setfoot
{Tenant Initials:\makebox[3em]{\hrulefill}}% left
{}% center
{Landlord Initials:{\makebox[3em]{\hrulefill}}}% right
}
\AtEndDocument{\thispagestyle{empty}}
\pagestyle{rest}
\begin{document}
\lipsum
\end{document}
答案2
这是宏中的一个错误\ttl@duplthreeargs
,它确实如此, #1#2#3#4->#1[#2][#3][#4]{#2}{#3}{#4}
但#1#2#3#4->#1[{#2}][{#3}][{#4}]{#2}{#3}{#4}
至少应该如此#4
,因为][
分隔符不太可能出现在和中#2
,而#3
不是单独的]
。#4
否则,这里来自的任何]
内容都会在下一个宏中破坏正确的流程,该宏会获取分隔参数。这里最终会出现故障。#4
\makebox[3em]{\hrulefill}
\ttl@setfoot
[#1][#2][#3]#4#5#6
#3
Landlord Initials:\makebox [3em
解决方法给出答案,以上内容已在@egreg 回答中附带的评论中提及。