我有一章完全包含在parallel
环境中。将章节标题放在环境之外会导致创建一个空白页(仅包含章节标题)并从下一页开始翻译。将标题放在环境内解决了这个问题:
...
\begin{Parallel}[p]{\textwidth}{\textwidth}
\ParallelLText{\section{Translation} In the preceding chapter...
然而,这导致了另一个问题:我习惯fancyhdr
将当前(子)部分的标题放在页面顶部,但这个特定部分变得不可见并且被完全忽略,所以不管我的最后一部分是否已经开始,最后一部分的标题仍保留在标题中。
我不确定这是否是由于我误用了环境parallel
,但我想知道是否有一个简单的解决方法。
这是我的 MWE。请注意,parallel
在显示之前会创建额外的页面,但我的标题问题仍然存在。
\documentclass[12pt, twoside]{article}
\usepackage[a4paper, margin=2.5cm, asymmetric,bindingoffset=1cm]{geometry}
\usepackage[T2A,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{parallel}
\usepackage{lipsum}
\renewcommand{\headrulewidth}{.5pt}
\pagestyle{fancy}
\renewcommand{\sectionmark}[1]{\markright{#1}}
\renewcommand{\subsectionmark}[1]{\markright{#1}}
\fancyhf{}
\fancyhead[LE,RO]{\thepage}
\fancyhead[LO,RE]{\slshape\nouppercase{\rightmark}}
\raggedbottom
\begin{document}
\section{First title}
\lipsum[1]
\pagebreak
\section{Second title}
\lipsum[2]
\pagebreak%
\begin{Parallel}[p]{\textwidth}{\textwidth}
\ParallelLText{\section{Translation} \lipsum[3-7]}
\ParallelRText{\lipsum[3-7]}
\end{Parallel}
\end{document}
答案1
该包parallel
使用\vsplit
其工作;\mark
由\markright
(和\markboth
)发出的命令存储在\splitfirstmark
和中,\splitbotmark
而不是\firstmark
和朋友中。
如果你只是使用\rightmark
以下解决方法似乎可以工作,但应该用更大的文档进行测试。我假设章节标题在左页。
这个想法是,如果出现一个标记,它将被存储在中\splitfirstmark
,所以我测试它是否为空;如果不是,我会发出适当的\markright
命令。
\documentclass[12pt, twoside]{article}
\usepackage[a4paper, margin=2.5cm, asymmetric,headheight=14.5pt,bindingoffset=1cm]{geometry}
\usepackage[T2A,T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{fancyhdr}
\usepackage{parallel}
\usepackage{etoolbox}
\patchcmd{\ParallelParTwoPages}
{\else\ifodd}
{\extractfirstmark\else\ifodd}
{}{}
\makeatletter
\newcommand{\extractfirstmark}{%
\if\relax\detokenize\expandafter{\splitfirstmark}\relax
\else
\expandafter\expandafter\expandafter\markright
\expandafter\expandafter\expandafter{\expandafter\@secondoftwo\splitfirstmark}%
\fi
}
\makeatother
\usepackage{lipsum}
\renewcommand{\headrulewidth}{.5pt}
\pagestyle{fancy}
\renewcommand{\sectionmark}[1]{\markright{#1}}
\renewcommand{\subsectionmark}[1]{\markright{#1}}
\fancyhf{}
\fancyhead[LE,RO]{\thepage}
\fancyhead[LO,RE]{\slshape\nouppercase{\rightmark}}
\raggedbottom
\begin{document}
\section{First title}
\lipsum[1]
\pagebreak
\section{Second title}
\lipsum[2]
\clearpage
\begin{Parallel}[p]{\textwidth}{\textwidth}
\ParallelLText{\section{Translation} \lipsum[3-12]}
\ParallelRText{\lipsum[3-12]}
\end{Parallel}
\end{document}