![使用边注在页边空白处添加全宽文本和参考资料](https://linux22.com/image/324396/%E4%BD%BF%E7%94%A8%E8%BE%B9%E6%B3%A8%E5%9C%A8%E9%A1%B5%E8%BE%B9%E7%A9%BA%E7%99%BD%E5%A4%84%E6%B7%BB%E5%8A%A0%E5%85%A8%E5%AE%BD%E6%96%87%E6%9C%AC%E5%92%8C%E5%8F%82%E8%80%83%E8%B5%84%E6%96%99.png)
tufte-book 文档类使用 marginnotes 来显示参考文献,使用环境fullwidth
允许文本部分延伸到边距(我的以前的问题给出了后者的一个例子)。如果不是因为同时使用 amsmath 和 musixtex 包会导致错误,我会使用该文档类 - 即使以下内容在编译时也会产生错误:
\documentclass{tufte-book}
\usepackage{amsmath}
\usepackage{musixtex}
\begin{document}
Test
\end{document}
注意:我拥有 tufte-latex 所需的所有先决条件包。
所以我想在不使用 tufte-book 的情况下复制这些功能。这可行吗?如果可行,我该怎么做?
答案1
我从 ceasar-book 中偷了一些代码,并为 book.cls 进行了修复。
\documentclass{book}
\usepackage{chngpage}
\usepackage{amsmath}
\usepackage{musixtex}
\usepackage{showframe}
\newlength{\overhang}
\setlength{\overhang}{\marginparwidth}
\addtolength{\overhang}{\marginparsep}
%
\newenvironment{fullwidth}
{\if@twoside\begin{adjustwidth*}{}{-\overhang}%
\else\begin{adjustwidth}{}{-\overhang}%
\fi
}%
{\if@twoside\end{adjustwidth*}%
\else\end{adjustwidth}%
\fi
}
\begin{document}
\begin{fullwidth}
left \hfill right
\end{fullwidth}
\end{document}