现希望在文档中公式字体采用ebgaramond
,经过搜索,发现至少有两种方案:
\usepackage[garamond]{mathdesign}
\usepackage[ebgaramond]{newtxmath}
使用newtxmath
一切正常:
但是用mathdesign
自带的宏包出现问题:pdflatex
报错信息如下:
!pdfTeX error: pdflatex.exe (file ugmr8a.pfb): cannot open Type 1 font file for
reading
==> Fatal error occurred, no output PDF file produced!
xelatex
报错信息如下:
xdvipdfmx:fatal: Cannot proceed without .vf or "physical" font for PDF output...
No output PDF file written.
MWE如下(使用环境为 TeXLive2024+windows11专业版 没有安装过有关ebgaramond的字体)
\documentclass{article}
\usepackage{lipsum}
\usepackage[T1]{fontenc}
\usepackage[garamond]{mathdesign} % Error in this line
%usepackage[ebgaramond]{newtxmath} % Work with newtxmath
\begin{document}
\lipsum[1-3]
\[
\sum_{n=1}^\infty \frac{1}{n^2} \forall x\in Dxyz abcd \exists Fxyzuvw \int_0^\infty f(x)\mathrm{d}t
\]
\lipsum[1-3]
\end{document}
PS.搜索发现本论坛有类似问题,但似乎并没有得到完善的回答。
https://ask.latexstudio.net/ask/question/3298.html
OsbertWang指出,并不是所有字体的宏包均包含了对应的字体,有部分仅仅是提供了调用字体的接口。
因此 https://ask.latexstudio.net/ask/question/3298.html 中的做法是合理的。
另一方面,mathdesign
宏包的文档还提到容易发生宏包冲突
做一个简单的总结,2024年9月测试,windows系统下如果要调用garamond
数学字体,大致有以下三种可行的方案
unicode-math
提供的\setmainfont
调用\usepackage{unicode-math}
\setmathfont{Garamond-Math}
newtxmath
宏包提供的garamond选项\usepackage[ebgaramond]{newtxmath}
Garamond-Math
宏包文档提供的方法\usepackage[math-style=ISO, bold-style=ISO]{unicode-math}
\setmainfont{EB Garamond}%You should have installed the font
\setmathfont{Garamond-Math.otf}[StylisticSet={7,9}]