Unicode-math 提供了\fint
和\intbar
符号,可用于排版积分的主值。不幸的是,这些符号不能像标准符号那样按比例缩放,\int
如以下示例所示:
\documentclass{article}
\usepackage{ifxetex}
\ifxetex
\usepackage{fontspec}
\defaultfontfeatures{Ligatures={TeX}}
\setmainfont[Numbers={Proportional}]{Cambria}
\setsansfont[Scale=MatchLowercase]{Corbel}
\setmonofont[Scale=MatchLowercase]{Myriad Pro}
\usepackage[math-style=ISO,bold-style=ISO]{unicode-math}
\setmathfont[Color=000066,Scale=MatchLowercase]{Cambria Math}
\else
\usepackage{esint}
\fi
\begin{document}
\[
\displaystyle A\int B
\textstyle A\int B
\scriptstyle A\int B
\scriptscriptstyle A\int B
\]
\[
\displaystyle A\fint B
\textstyle A\fint B
\scriptstyle A\fint B
\scriptscriptstyle A\fint B
\]
\end{document}
如何从中设计宏\fint
或\intbar
设计功能等效的宏\int
?我知道其他解决方案提供了排版主值积分的命令,但它们都需要在更改数学 OTF 字体后进行微调。
答案1
unicode-math
以相同的方式定义两个字符,符号是否有多种尺寸纯粹是字体设计师的选择。
使用 stix (xits) 我得到
\documentclass{article}
\usepackage{unicode-math}
\setmathfont{xits-math.otf}
\begin{document}
\[
\displaystyle A\int B
\textstyle A\int B
\scriptstyle A\int B
\scriptscriptstyle A\int B
\]
\[
\displaystyle A\fint B
\textstyle A\fint B
\scriptstyle A\fint B
\scriptscriptstyle A\fint B
\]
\end{document}