我怎样才能将文档的正文仅放在左页,而将脚注放在右页(或反之亦然)?
更新:
预期的外观与将整个脚注区域移动到下一页没有什么不同。像这样的简单解决方案应该可行,但实际上却不行:
\renewcommand\footnoterule{\newpage}
更新:
我自己在这方面取得了一些小进展。footnote
作为的一部分,该包mdwtools
有一个名为的命令\savenotes
、savenotes
环境和spewnotes
命令。
savenotes
- 这告诉它保存笔记。savenotes
环境- 此处之间的文本位置已保存。spewnotes
- 这告诉它打印笔记。
此代码将显示一些文本,但将脚注放在下一页:
\documentclass{article}
\usepackage{footnote}
\begin{document}
\savenotes
This is some text.\footnote{This is a footnote.}
\newpage
\spewnotes
\end{document}
不幸的是,这似乎与不兼容footmisc
。
更新:
我发现这个页面解释了如何将文本放在正面,将图形放在反面:
经过一些修改,脚注可以放在左侧页面上:
\documentclass{book}
\usepackage{afterpage}
\usepackage{blindtext}
\makeatletter
\newcommand\@addfig{\relax}
\newcommand\addfig[1]{\global\long\def\@addfig{#1}}
\newcommand\@putfig{\@addfig\addfig{\relax}}
\newcommand\blankpage{%
\null
\@putfig%
\thispagestyle{empty}%
\addtocounter{page}{-1}%
\clearpage
\afterpage{\blankpage}}
\makeatother
\begin{document}
\afterpage{\footnote{This is in the right place.}\blankpage}
\blindtext
\Blindtext
\Blindtext
\Blindtext
\Blindtext
\Blindtext
\end{document}
所有内容的放置似乎都很好,但脚注并没有真正发挥应有的作用。
答案1
这更像是一个可能的解决方案的路线图:你可以拆分footnote
,即使用\footnotemark
和\footnotetext
。然后你“收集”\footnotetext
一个反面页面的所有内容,并在分页符后发布收集的内容。表脚注软件包对表格做了类似的事情:收集表格中出现的所有脚注,并在环境结束时(即之后)发出table
收集到的脚注。\footnotetext
编辑
获取您的代码hyperref
并滥用tablefootnote
我得到了这个:
\documentclass{book}
\usepackage{hyperref}
\usepackage{tablefootnote}
\usepackage{afterpage}
\usepackage{blindtext}
\makeatletter
\newcommand\@addfig{\relax}
\newcommand\addfig[1]{\global\long\def\@addfig{#1}}
\newcommand\@putfig{\@addfig\addfig{\relax}}
\newcommand\blankpage{%
\null
\@putfig%
\thispagestyle{empty}%
\addtocounter{page}{-1}%
\clearpage
\afterpage{\spewtfn \blankpage}}
\def\spewtfn{%
\tfn@tablefootnoteprintout%
\gdef\tfn@fnt{0}%
}
\makeatother
\begin{document}
\afterpage{\spewtfn \blankpage}
\blindtext\tablefootnote{This is in the right place.}\tablefootnote{Another one.}
\Blindtext
\Blindtext\tablefootnote{A third one.}
\Blindtext
\Blindtext
\Blindtext
\end{document}
但这意味着您将在放置脚注标记的页面背面获得脚注文本。您想要这个吗?
答案2
由于你没有描述它有什么用处,所以很难猜测确切地你需要。这是第一个可运行的版本:
我定义了一个比您需要的页面大两倍的页面。我假设是 A4,所以我做了一个 A3 页面。现在您希望左侧显示文本,右侧显示脚注。因此,我将“正文”部分定义为文本,将“边注”部分定义为脚注。在提供宏以使边注正常工作后,您就可以开始了,软件包marginfix
会负责对齐。
\documentclass{article}
\usepackage[paperwidth=420mm, paperheight=297mm, left=15mm, top=15mm, textwidth=180mm, marginparsep=30mm, marginparwidth=180mm, textheight=257mm, footskip=15mm]{geometry}
\usepackage{lipsum}
\usepackage{marginfix}
\usepackage{xifthen}
\makeatletter
\newcommand*{\sidestyle}{\footnotesize}
\newcounter{sidenote} % make counter
\newcounter{@sidenotes@buffer}
\setcounter{sidenote}{1} % init counter
\newcommand{\sidenote}[2][]{%
\ifthenelse{\isempty{#1}}%
{\sidenotemark%
\sidenotetext{#2}}%
{\sidenotemark[#1]%
\sidenotetext[#1]{#2}}%
}
\newcommand{\sidenotemark}[1][]{%
\nobreak\hspace{0.1pt}\nobreak%
\ifthenelse{\isempty{#1}}%
{\textsuperscript{\thesidenote}%
\refstepcounter{sidenote}}% if no argument is given use sidenote counter%
{\setcounter{@sidenotes@buffer}{\value{sidenote}}%
\setcounter{sidenote}{#1}%
\textsuperscript{\thesidenote}% print out the argument otherwise
\setcounter{sidenote}{\value{@sidenotes@buffer}}}%
\@ifnextchar\sidenote{\textsuperscript{,}}{}%
\ignorespaces%
}%
\newcommand{\sidenotetext}[2][]{%
\ifthenelse{\isempty{#1}}{% sitenotemark given?
\addtocounter{sidenote}{-1}%
\marginpar{\textsuperscript{\thesidenote}{} \sidestyle#2}%
\addtocounter{sidenote}{1}}%
{\marginpar{\textsuperscript{#1} \sidestyle#2}%
}% fi
}%
\makeatother
\pagestyle{empty}
\begin{document}
\lipsum*[1]\sidenote{\lipsum[2]}
\lipsum*[3-4]\sidenote{\lipsum[4]}
\lipsum*[5]\sidenote{\lipsum[6]}
\lipsum*[7-9]\sidenote{\lipsum[8]}
\lipsum*[9]\sidenote{\lipsum[10]}
\lipsum*[11]\sidenote{\lipsum[12]}
\lipsum*[13]\sidenote{\lipsum[14]}
\lipsum*[1]\sidenote{\lipsum[2]}
\lipsum*[3-4]\sidenote{\lipsum[4]}
\lipsum*[5]\sidenote{\lipsum[6]}
\lipsum*[7-9]\sidenote{\lipsum[8]}
\lipsum*[9]\sidenote{\lipsum[10]}
\lipsum*[11]\sidenote{\lipsum[12]}
\lipsum*[13]\sidenote{\lipsum[14]}
\end{document}
页码编号等还需要做更多工作。
答案3
footnote 与 footmisc 软件包之间的问题在于许可问题;我想将它们合并,但 footnote 的作者坚持结果应为 gpl——我想尊重 footmisc 的原始许可证。(我现在与 footnotes 的作者失去了联系;我想我现在可能会做出其他决定……)
但是,我不确定脚注是否是完成这项工作的明显方法。我宁愿考虑破解 Endnote,毕竟,它的人生目标是将“注释”放在它们被命名的页面之外。但是,要让注释的顺序正确,如果我不做些小努力的话,就无法做到......