Paracol 是一个允许同步多列排版的包。但是,我发现两列的段落顶部不对齐的情况。以下是仅显示问题的 MWE
\documentclass{article}
\usepackage{paracol}
\usepackage{ctex}
\usepackage{lipsum}
\title{Paracol}
\footnotelayout{m}
\author{kraanium13 }
\date{October 2023}
\begin{document}
\maketitle
\section{Introduction}
\lipsum[1-2]
\begin{paracol}{2}
test \footnote{a regular footnote}
test \footnote{a regular footnote}
\switchcolumn
no footnote text
\end{paracol}
\end{document}
出现这种情况的原因是左列没有足够的空间放置脚注,因此内容被刷新到下一页。但是,右列不受影响。这导致左列的第一行与右列的第一行位于不同的页面上的情况。
但是我希望让它们在顶部对齐(即左列和右列的第一行至少应该在同一页上)。我能想到一些可能的解决方案:
- 在右列中添加垂直空间,使它们与新页面对齐。数量应与 TeX 在左列中添加的数量相同。
- 更一般地说,我们能否在放置任何文本之前确定是否应该触发分页符?
- 强制将带有脚注标记的行保留在上一页,但将脚注文本保留在下一页。这将导致一些差异,但我在脚注很长时见过这种情况。
答案1
抱歉,不明白您的观点是什么:也许是包使用不正确paracol
?
\documentclass{article}
\usepackage{paracol}
%\usepackage{ctex}
\usepackage{lipsum}
\title{Paracol}
\footnotelayout{m}
\author{kraanium13 }
\date{October 2023}
\begin{document}
\maketitle
\section{Introduction}
\lipsum[5-6]\bigskip
\begin{paracol}{2}
\switchcolumn[0]
test \footnote{a regular footnote}
test \footnote{a regular footnote}
\switchcolumn[1]
no footnote text\bigskip
but here's a footnote\footnote{right column}
\switchcolumn[0]
\lipsum[5]
\switchcolumn[1]
\lipsum[5]
\end{paracol}
\end{document}
答案2
如果你真的想要强制将脚注标记放在与脚注文本不同的页面上:
\documentclass{article}
\usepackage{paracol}
\usepackage{ctex}
\usepackage{showframe}% alignment tool
\title{Paracol}
\footnotelayout{m}
\author{kraanium13 }
\date{October 2023}
\begin{document}
\maketitle
\section{Introduction}
\noindent\rule{\textwidth}{20\baselineskip}
\begin{paracol}{2}
test \footnotemark \edef\tempnumber{\thefootnote}
test \footnotemark
\newpage
\footnotetext[\tempnumber]{a regular footnote}
\footnotetext{a regular footnote}
\switchcolumn
no footnote text
\end{paracol}
\end{document}