将脚注标记与文本边距对齐

将脚注标记与文本边距对齐

我必须克隆一份文档,并且脚注标记不应缩进,而应与正文对齐。我在其他地方找不到答案。有什么想法吗?我正在使用 XeLaTeX。

结果应如下所示:

textbody-textbody-textbody-textbody-textbody² textbody-textbody-textbody-textbody-textbody-textbody-textbody-textbody-textbody-

2 脚注-脚注-脚注-脚注-脚注-脚注-脚注-脚注-脚注-脚注-脚注-脚注-脚注-脚注-脚注-脚注-

  1. 脚注的数字应该与脚注的大小相同。这可以通过以下方式实现:

    \usepackage{scrextend}
    \deffootnote{1,2em}{1.6em}{\thefootnotemark.\enskip}  
    

    (从https://tex.stackexchange.com/a/19845/

  2. 脚注文本应与正文对齐。

答案1

编辑:我的第一个“解决方案”只是偶然起作用,并且只适用于一位数的脚注。这里有更强大的解决方案:

\documentclass{article}

\usepackage{scrextend}
\deffootnote[1.8em]{0pt}{1.6em}{\makebox[1.8em][l]{\thefootnotemark.}}

\textheight=400pt% just for the example

\usepackage{lipsum}

\begin{document}

Some text.\footnote{\lipsum*[1]}

\setcounter{footnote}{10}

\lipsum*[1]\footnote{\lipsum*[1]}

\end{document}

在此处输入图片描述

答案2

以下是通过重新定义来修改脚注显示的一种稍微更逐字的方式\@makefntext

在此处输入图片描述

\documentclass{article}

\makeatletter
\renewcommand{\@makefntext}[1]{%
  \parindent 1em%
  \noindent\normalfont\@thefnmark~#1
}
\makeatother

\textheight=250pt% just for the example

\usepackage{lipsum}

\begin{document}

\lipsum*[1]\footnote{\lipsum*[1]}

\end{document}

这只是将第一个脚注段落推到脚注编号上,用 分隔~。如果您希望段落编号为常规脚注段落缩进的宽度(1em默认情况下为article),则可以使用

\makeatletter
\renewcommand{\@makefntext}[1]{%
  \parindent 1em%
  \noindent\hb@xt@ \parindent{\normalfont\@thefnmark}#1
}
\makeatother

但是,如果有超过 9 个脚注,这将会出现问题,因为 10 英寸\normalfont正好是1em宽度,导致脚注编号/标记接触脚注文本。

相关内容