我如何调整边注的位置?(\newcommand 问题)

我如何调整边注的位置?(\newcommand 问题)

我有一个小脚本,可以让我在页边空白处添加脚注。它按我想要的方式工作,只是有时会重叠,或者如果它靠近页面底部,注释会被剪掉。使用 marginnote 包,有一个内置的高度调整,如下所示:\marginnote[2cm]。这不适用于下面的脚本。有人能帮我解决这个问题吗?

\documentclass{article}
% ----- General page-settings ----- %
\usepackage[
    top=3cm,
    bottom=3cm, 
    outer=7cm, 
    marginparsep=1cm, 
    headsep=10pt,a4paper, 
    marginparwidth=4cm]{geometry} % Page margins

% Margin notes w. footnotes and math
\usepackage{marginnote}

% --- This whole thing gives footnotes in margin w. 
\newcounter{mgncount}
\renewcommand\themgncount{\arabic{mgncount} }
\newcommand\marginfoot[1]{\refstepcounter{mgncount}\marginnote{{$^{\themgncount}$}#1}\footnotemark}

\begin{document}
Here's some text \marginfoot{A footnote}
\end{document}

我尝试[]在行尾添加一个\renewcommand,但不起作用。感谢任何帮助!

答案1

如果您不想重叠,只需使用 LaTeX 的内置功能\marginpar而不是\marginnote

\documentclass{article}
% ----- General page-settings ----- %
\usepackage[
    top=3cm,
    bottom=3cm, 
    outer=7cm, 
    marginparsep=1cm, 
    headsep=10pt,a4paper, 
    marginparwidth=4cm]{geometry} % Page margins

% --- This whole thing gives footnotes in margin w. 
\newcounter{mgncount}
\renewcommand\themgncount{\arabic{mgncount} }
\newcommand\marginfoot[1]{\refstepcounter{mgncount}\marginpar{{$^{\themgncount}$}#1}\footnotemark}

\begin{document}
Here's some text\marginfoot{A footnote}.\marginfoot{A second footnote}
\end{document}

使用 \marginpar 代替 \marginnote

将注释准确地固定到文本中所在的行上,是 的主要功能之一marginnote

但是,如果您确实想要使用marginnote(没有任何支持的包),您可以在命令中添加一个可选参数:

\documentclass{article}
% ----- General page-settings ----- %
\usepackage[
    top=3cm,
    bottom=3cm, 
    outer=7cm, 
    marginparsep=1cm, 
    headsep=10pt,a4paper, 
    marginparwidth=4cm]{geometry} % Page margins

\usepackage{marginnote}
    
% --- This whole thing gives footnotes in margin w. 
\newcounter{mgncount}
\renewcommand\themgncount{\arabic{mgncount} }
\newcommand\marginfoot[2][0pt]{\refstepcounter{mgncount}\marginnote{{$^{\themgncount}$}#2}[#1]\footnotemark}

\begin{document}
Here's some text\marginfoot{A footnote}.\marginfoot[\baselineskip]{A second footnote}
\end{document}

这看起来与上面的相同。但请注意,偏移可能会将注释置于文本区域下方(但仍在边距内)。

有关如何使用\newcommand定义带有可选参数的命令的更多信息,请参阅 LaTeX 介绍。

相关内容