Tufte-Latex 自由文本和数学字体不兼容问题

Tufte-Latex 自由文本和数学字体不兼容问题

我想用该类编写一个实质性的数学文档tufte-book,并进行一些小的更改。我的第一个问题是,在加载我喜欢的字体libertine以及newtxmath获取其关联的数学字体后,我仍然会得到 libertine 和 math 中的文本,看起来像默认的 Palatino。我正在使用 进行编译pdflatex。这是 MWE:

\documentclass[nofont]{tufte-book}
\usepackage[T1]{fontenc}
\usepackage{amsthm}
\usepackage{newtxmath}
\usepackage{libertine}
\everymath{\displaystyle}


\begin{document}


We have 
\[
\frac{d}{dx}(\sin \theta)=\cos \theta,
\]
with libertine text but math in Palatino.  Another example is the summation formula
\[
\sum_{i=1}^\infty i^2=\frac{n(n+1)(2n+1)}{6}.
\]


\end{document}

答案1

您可以考虑使用Khaled Hosny 的Linux Libertine 的分支名为自由主义者其中包括基于 Linux Libertine 的 OpenType 数学字体。切换到 XeLaTeX,然后将以下内容添加到文档的序言中:

\usepackage{fontspec}
\setmainfont{Libertinus Serif}
\setsansfont{Libertinus Sans}
\setmonofont{Libertinus Mono}

\usepackage{unicode-math}
\setmathfont{Libertinus Math}

使用xelatex,字体编码默认为 Unicocde (UTF-8),因此您可以删除fontenc包以及libertinenewtxmath包。

完整的测试文档如下:

\documentclass[nofonts]{tufte-book}

\usepackage{amsthm}

\usepackage{fontspec}
\setmainfont{Libertinus Serif}
\setsansfont{Libertinus Sans}
\setmonofont{Libertinus Mono}

\usepackage{unicode-math}
\setmathfont{Libertinus Math}

\everymath{\displaystyle}

\begin{document}

We have
\[
\frac{d}{dx}(\sin \theta)=\cos \theta,
\]
with Libertinus Serif text and math in Libertinus Math.  Another example is the summation formula
\[
\sum_{i=1}^\infty i^2=\frac{n(n+1)(2n+1)}{6}.
\]
\end{document}

结果如下:

测试文档输出

相关内容