使用 \Umathchardef 在 XeTeX 中定义可变大小的数学符号

使用 \Umathchardef 在 XeTeX 中定义可变大小的数学符号

我需要使用 TrueType 字体中的字符作为数学符号。morbusg 的回答,我尝试了这样的事情:

\font\mymathtfont="Times New Roman"
\font\mymathsfont="Times New Roman/S=7" at 7pt
\font\mymathssfont="Times New Roman/S=5" at 5pt
\newfam\mymathfam
\textfont\mymathfam=\mymathtfont
\scriptfont\mymathfam=\mymathsfont
\scriptscriptfont\mymathfam=\mymathssfont
\Umathchardef\mysym 3 \mymathfam "1D76

该命令\mysym确实打印了符号,但是当文章中的字体大小发生变化时(例如在\fontsize{14.4pt}{1.3\baselineskip}\selectfont后面添加\begin{document}),打印的符号大小\mysym保持不变。我猜测这是因为选择字体时字体大小是固定的,那么在这种情况下选择字体的正确方法是什么?谢谢!

答案1

设置数学字体是一件微妙的事情,您不需要它来设置几个符号。

\documentclass{article}
\usepackage{amsmath}
\usepackage{fontspec}

\newfontfamily{\timesnewroman}{Times New Roman}

\DeclareRobustCommand\mysym{%
  \mathrel{\text{\normalfont\timesnewroman\symbol{"1D76}}}%
}

\begin{document}

$a\mysym b+\sum_{a\mysym b}X$

\Huge

$a\mysym b$

\end{document}

在此处输入图片描述

相关内容