我希望完全一样标题、字体等等就像在“tufte-book”中一样文档类适用于我的所有\chapters
、\sections
等\subsections
,使用“book”文档类。因此,我尝试过:
- 使用“tufte-book”文档类但删除边距。不可能???
- 尝试在 tufte-book 中找到定义,并为
\sections
“book”文档类中的所有命令重新定义新命令。 - 使用“book”文档类并试用这些包 :
\usepackage{mathpazo}
,,\usepackage[scaled=0.90]{helvet}
\usepackage[scaled=0.85]{beramono}
。\usepackage{amsmath, amssymb, amsfonts}
然而,这并没有输出与 tufte-book 完全相同的字体。因此,我的问题是:
- 我如何找到一种方法来模仿我的文档类中的 tufte 字体?
- 我的方法是否合理或者还有其他方法吗?
- 如何重新定义命令以及在类的源代码中哪里可以找到原始字体定义?
提前感谢大家的帮助!
答案1
通过 tufte-common.def 和 tufte-book.cls 我发现 tufte 使用了 fancyhdr 包。对于 frontmatter 它使用
\ifthenelse{\boolean{@tufte@twoside}}%
{\fancyhead[LE,RO]{\thepage}}%
{\fancyhead[RE,RO]{\thepage}}%
而对于主要内容,它使用
\ifthenelse{\boolean{@tufte@twoside}}%
{% two-side
\renewcommand{\chaptermark}[1]{\markboth{##1}{}}%
\fancyhead[LE]{\thepage\quad\smallcaps{\newlinetospace{\plaintitle}}}% book title
\fancyhead[RO]{\smallcaps{\newlinetospace{\leftmark}}\quad\thepage}% chapter title
}%
{% one-side
\fancyhead[RE,RO]{\smallcaps{\newlinetospace{\plaintitle}}\quad\thepage}% book title
}%
您必须用 等 进行替换\ifthenelse{\boolean{@tufte@twoside}}
。\if@twoside
应将其 \plaintitle
替换为\@title
。
我还发现
\IfFileExists{mathpazo.sty}{\RequirePackage[osf,sc]{mathpazo}}{}
\IfFileExists{helvet.sty}{\RequirePackage[scaled=0.90]{helvet}}{}
\IfFileExists{beramono.sty}{\RequirePackage[scaled=0.85]{beramono}}{}
\RequirePackage[T1]{fontenc}
\RequirePackage{textcomp}
尽管也不适用于 xetex 或 lualatex。