正如标题所述,我想在 Beamer 演示文稿中使用和mathpazo
。eulervm
我尝试复制似乎适用于article
文档类的方法,即编写
\usepackage{mathpazo}
\usepackage{eulervm}
然后添加
\usefonttheme{serif}
具体来说,这是我的代码:
\documentclass[11pt]{beamer}
\usefonttheme{serif}
\usepackage{amsmath,amsthm,amssymb,amsfonts}
\usepackage[T1]{fontenc}
\usepackage{mathpazo}
\usepackage{euler}
\title{Test Title}
\begin{document}
\begin{frame}[plain]
\maketitle
This is rendered in mathpazo. However, what follows is not eulervm.
\begin{theorem} If $V$ and $W$ are two finite dimensional $\mathbb{K}$-vector spaces and $f : V \to W$ is a linear transformation, then
\[
\dim V = \dim \ker f + \dim \operatorname{im} f.
\]
\end{theorem}
\end{frame}
\end{document}
然而,这在数学模式下无法实现eulervm
(顺便说一句,如果我省略包括,它就可以正常工作mathpazo
),如图所示,
这是预期的行为还是我遗漏了什么?如果是前者,有什么解决方法吗?
任何帮助是极大的赞赏。
答案1
Guido 的自我回答已经解决了他遇到的技术问题。不过,按照他的要求,我会将我的评论移至补充答案中。
mathpazo
+有现代的替代品eulervm
,可以提供更全面、更有凝聚力的符号集,并与更多种类的软件包兼容。
使用旧字体
一个与 PDFTeX 和 Type 1 字体兼容的eulerpx
软件包是它。它结合了 AMS Eulernewpxmath
并且仍在维护中。
\documentclass[11pt]{beamer}
\usepackage[T1]{fontenc}
\usefonttheme{serif}
\usefonttheme{professionalfonts}
\usepackage{amsmath, tgpagella, eulerpx, eucal, eufrak}
\title{Test Title}
\begin{document}
\begin{frame}[plain]
\maketitle
This is rendered in newpx, with math from eulerpx.
\begin{theorem} If $V$ and $W$ are two finite dimensional $\mathbb{K}$-vector spaces and $f : V \to W$ is a linear transformation, then
\[
\dim V = \dim \ker f + \dim \operatorname{im} f.
\]
Also, \(\mathcal{C}\) and \(\mathfrak{F}\).
\end{theorem}
\end{frame}
\end{document}
如果需要,您可以加载其他字体。该示例将 Euler Script 和 Euler Fraktur 加载为\mathcal
和\mathfrak
。您也可以使用 来设置数学字母mathalpha
。如果您还想使用无衬线字体(例如用于标题),Hermann Zapf 的 Optima 是他的 Palatino 和 Euler 的绝佳伴侣。它的克隆版本 URW Classico 现已推出免费通过classico
包。适用于代码列表的良好等宽字体是 Inconsolata,其人文主义风格非常和谐。
我擅自删除了它们amsthm
,amssymb
因为beamer
它们会自动加载。您需要向其传递noamssymb
或noamsthm
选项才能关闭它们。
使用现代字体
所有这些字体都有 OpenType 克隆。Windows 10 和 MacOS 都附带 Palatino,或者您可以使用 TeX Gyre Pagella。Khaled Hosny 发布一个被废弃但仍可用的 Euler OpenType 版本。 Asana Math 基于 Young Ryu 的mathpazo
字体。
\documentclass[11pt]{beamer}
\usefonttheme{serif}
\usefonttheme{professionalfonts}
\usepackage[math-style=upright]{unicode-math}
\defaultfontfeatures{ Scale=MatchLowercase }
\setmainfont{TeX Gyre Pagella}[Scale = 1.0]
\setmathfont{Asana Math}
\setmathfont{Neo Euler}[
range={up/{Latin, latin, Greek, greek},
bfup/{Latin, latin, Greek, greek},
cal, bfcal,
frak, bffrak
},
script-features={},
sscript-features={} ]
\title{Test Title}
\begin{document}
\begin{frame}[plain]
\maketitle
This is rendered in Pagella, with math symbols from Asana Math and math letters from Neo Euler.
\begin{theorem} If $V$ and $W$ are two finite dimensional $\mathbb{K}$-vector spaces and $f : V \to W$ is a linear transformation, then
\[
\dim V = \dim \ker f + \dim \operatorname{im} f.
\]
Also, \(\mathcal{C}\) and \(\mathfrak{F}\).
\end{theorem}
\end{frame}
\end{document}
Neo Euler 有一些需要解决的怪癖。作为直立字体,只有当您写入\symup
或传递math-style=upright
选项时才会选择它unicode-math
。它的下标和上标的间距对我来说看起来不对劲,尽管这是故意的,所以我抑制了它的脚本样式。最后,它的数学符号比其他 OpenType 字体少(伟大的 Hermann Zapf 也不在我们身边绘制了),所以最好使用选项而range=
不是后备字体来加载它。谢天谢地,无论如何,这都是你想要的。
由于 Asana Math 和 TeX Gyre Pagella 都是 Adobe 版 Palatino 的分支,因此它们的数字相同,我们只需不触摸它们,即可1
使其看起来与 相同$1$
。您可以从 Neo Euler 中选择其他符号,例如加号,方法是将它们添加到列表中range=
。
答案2
正如一位删除了其答案的用户所说,可以通过使用professionalfonts
和serif
字体主题来解决这个问题。
具体来说,代码
\documentclass[11pt]{beamer}
\usefonttheme{serif}
\usefonttheme{professionalfonts}
\usepackage{amsmath,amsthm,amssymb,amsfonts}
\usepackage[T1]{fontenc}
\usepackage{mathpazo}
\usepackage{euler}
\title{Test Title}
\begin{document}
\begin{frame}[plain]
\maketitle
This is rendered in mathpazo and what follows is eulervm.
\begin{theorem} If $V$ and $W$ are two finite dimensional $\mathbb{K}$-vector spaces and $f : V \to W$ is a linear transformation, then
\[
\dim V = \dim \ker f + \dim \operatorname{im} f.
\]
\end{theorem}
\end{frame}
\end{document}
生产
如预期的。