如何避免 marginpar 被裁剪?

如何避免 marginpar 被裁剪?

我正在使用该fixme包为我的论文草稿的各个部分添加注释。但是,如果我使用该geometry包设置页边距,我会注意到 fixme 注释的格式不正确(页边距溢出)。有简单的解决方法吗?MWE 如下:

\documentclass[letterpaper]{amsbook}
\usepackage[draft]{fixme}
\usepackage[lmargin=1.3in,rmargin=1.3in,bottom=1.3in,top=1.3in,twoside=False]{geometry}

\begin{document}
\listoffixmes


stuff \fixme{Here is where I would put a really long fixme note, so long in fact that it might seem silly....}

\end{document}

答案1

似乎没有任何问题;“fixme”注释,对于该注释,\fxnote应使用命令而不是弃用的\fixme,是使用正常边注的宽度排版的,即参数\marginparwidth;事实上,添加

marginparwidth=0.5in

传递给的选项几何学将注释排版在一个非常窄的栏中。

答案2

情况1

您使用oneside默认值includempfalse。marginpar 将位于右侧边距。在这种情况下,您必须确保

marginparsep + marginparwidth < rmargin

在此处输入图片描述

\documentclass[draft,letterpaper,oneside]{amsbook}
\usepackage{fixme}
\usepackage
[
    %-------------------------------------------------------------------------------------------
    %
    %for symmetrical margin, just use margin instead of lmargin, rmagin, etc.
    margin=1.3in,
    %-------------------------------------------------------------------------------------------
    %
    %includemp=true,% uncomment this if you want the marginpar is placed inside the outer margin.
    %-------------------------------------------------------------------------------------------
    %
    %If you use oneside document and default includemp (which is false)
    %marginparwidth + marginparsep < rmargin
    marginparwidth=1in,
    marginparsep=0.2in
    %-------------------------------------------------------------------------------------------
]{geometry}

\def\dummy{I can find a tool to convert EPS to PDF in my neither bathroom nor kitchen.}
\usepackage{lipsum}

\begin{document}
\listoffixmes
\lipsum[1] 
\fixme{\dummy}
\lipsum[3]
\newpage
\lipsum[4] 
\fixme{\dummy}
\lipsum[6]
\end{document}

案例 2

您使用onesideincludemp=true。 marginpar 将在右侧,但它会移到rmargin左侧。您必须确保

marginparsep + marginparwidth < textwidth

在此处输入图片描述

\documentclass[draft,letterpaper,oneside]{amsbook}
\usepackage{fixme}
\usepackage
[
    %-------------------------------------------------------------------------------------------
    %
    %for symmetrical margin, just use margin instead of lmargin, rmagin, etc.
    margin=1.3in,
    %-------------------------------------------------------------------------------------------
    %
    includemp=true,%marginpar is placed inside the outer margin.
    %-------------------------------------------------------------------------------------------
    %
    %If you use oneside document and includemp = true
    %marginparwidth + marginparsep < textwidth
    marginparwidth=1.9in,
    marginparsep=0.1in
    %-------------------------------------------------------------------------------------------
]{geometry}

\def\dummy{I can find a tool to convert EPS to PDF in my neither bathroom nor kitchen.}
\usepackage{lipsum}

\begin{document}
\listoffixmes
\lipsum[1] 
\fixme{\dummy}
\lipsum[3]
\newpage
\lipsum[4] 
\fixme{\dummy}
\lipsum[6]
\end{document}

答案3

添加一个简化的答案,以防它对任何人有帮助,因为它会对我有所帮助:

有两种解决方案。一种是添加ignoremp=false到 的选项geometry。这将导致整个文档的边距扩大以适合最大的注释 - 这可能不是理想的选择,除非您打算长期保留 fixme 注释。

另一个解决方案是将其设置marginparwidth=为比右边距(或外边距)略小的尺寸。这将设置 Fixme 格式化其注释的宽度。

例如,这对我有用:

\usepackage[
    top=2cm, bottom=3cm, inner=2cm, outer=3cm,
    marginparwidth=2cm %necessary to avoid breaking fixme notes.
    ]{geometry}
\usepackage[margin]{fixme}

相关内容