如果使用 XeLaTeX 編譯,軟體包「LibertinusT1Math」會引發錯誤

如果使用 XeLaTeX 編譯,軟體包「LibertinusT1Math」會引發錯誤

如果使用 XeLaTex 編譯,以下 MWE 會引發錯誤:

\documentclass{article}

\usepackage{libertinus}
\usepackage[slantedGreek]{libertinust1math}

\begin{document}
Lore ipsum dulur.
\end{document}

錯誤是:

(/usr/share/texmf-dist/tex/latex/amsmath/amstext.sty
(/usr/share/texmf-dist/tex/latex/amsmath/amsgen.sty))
(/usr/share/texmf-dist/tex/latex/amsmath/amsbsy.sty)
(/usr/share/texmf-dist/tex/latex/amsmath/amsopn.sty)

! LaTeX Error: Command \dddot already defined.
               Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.

LibertineT1Math 文檔說如果需要的話它會加載“amsmath”,但這顯然會導致錯誤。

如何將 Libertine/Libertinus 字型與 XeLaTeX 一起使用,不僅用於文字內文,還用於數學材質?

答案1

libertinus套件(實際上libertinus-otf,在使用 XeLaTeX 時加載)有一個nomath選項,但它不會避免加載unicode-math,但只是不將 Libertinus Math 設定為數學字體。

在我看來,該軟體包應該提供使用傳統數學字體(例如 Libertinus1Math)的選項。

解決方法:欺騙 LaTeX 使其認為unicode-math已經加載;您還需要明確載入fontspec.

\expandafter\def\csname [email protected]\endcsname{}

\documentclass{article}

\usepackage{fontspec}
\usepackage[nomath]{libertinus}
\usepackage[slantedGreek]{libertinust1math}

\begin{document}
Lore ipsum dulur $a=b-\sin x$
\end{document}

在此輸入影像描述

這是輸出pdffonts

name                                 type              encoding         emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
HXAFGM+LibertinusSerif-Regular-Identity-H CID Type 0C       Identity-H       yes yes yes      5  0
XWISZM+LibertinusT1Math              Type 1C           Custom           yes yes yes      6  0
RZKIRB+LibertinusT1Math              Type 1C           Custom           yes yes yes      7  0

如果您樂意使用unicode-math,那麼您可以使用 ISO 數學樣式:

\documentclass{article}

\PassOptionsToPackage{math-style=ISO}{unicode-math}
\usepackage{libertinus}

\begin{document}
Lore ipsum dulur $a=b-\sin 2x$

$\Gamma$ $\Delta$

\end{document}

相關內容