marginnote 的绝对垂直定位

marginnote 的绝对垂直定位

我在文档中使用“marginnote”包,如下例所示:

\documentclass{report}
\usepackage{marginnote}
\begin{document}
Richard of York gave battle in vain.\marginnote{This is a margin note}[1.0cm]
\end{document}

我可以使用括号中的值垂直偏移边注,但此偏移是相对于边注的默认位置的。我想要做的是定义边注的绝对垂直位置 - 比如说,距页面顶部 2 英寸 - 而不管边注的默认位置。

这可行吗,使用 marginnote 还是其他包?

答案1

这使用 tikzpagenodes。像 一样\marginnote,它需要运行两次。

\documentclass{report}
\usepackage{tikzpagenodes}
\usepackage{showframe}

\newcommand{\marginpos}[2][0pt]{\tikz[overlay,remember picture]%
  {\node[yshift=#1, below right, text width=\marginparwidth, inner sep=0pt, font=\sloppy]
    at (current page marginpar area.north west)
    {#2};}}

\begin{document}
Richard of York gave battle in vain.\marginpos[-2in]{This is a margin note}
\end{document}

相关内容