如何导入某种开放数学字体(Xepersian)

如何导入某种开放数学字体(Xepersian)

这是我的 MWE:

\documentclass[a4paper,openany,12pt]{book}           
\usepackage[a]{esvect}                                
\usepackage[utf8x]{inputenc}                       
\usepackage{amsmath,amssymb,amsthm,amsfonts}                   
\usepackage{mathrsfs,mathtools}                                                                               
\usepackage{fontenc}                                   
\usepackage{geometry}                           
\usepackage{fontspec}                    
\RequirePackage{hyperref}                    
\usepackage{etoolbox}           
\usepackage[computeautoilg=off]{xepersian}                   
\settextfont[Scale=1.1]{IRXLotus}                                                      
\setdigitfont[Scale=1.1]{IRXLotus}                  
\setlatintextfont[Scale=1.1]{Times New Roman}                 
\begin{document}               
\chapter{بردارهای ویژه و مقادیر ویژه}                             
    بردار $\mathbf{x}$ و $\mathbf{y}$    بر حسب پایه‌ای متعامد از فضای $\mathfrak{L}$ با مجموع حاصل‌ضرب دوبه‌دو متناظر مختصات آن‌ها به‌دست می‌آید. حال $\mathbf{x}$ را از $\mathfrak{L}$ بگیرید. اگر $\mathop{\xi_i=(\mathbf{x},\mathbf{e}_i)}_{(1 \leqslant i \leqslant n)}$ فرض شود، آنگاه
    \begin{equation*}
        \mathbf{x}=\xi_1 \mathbf{e}_1 +\cdots +\xi_n \mathbf{e}_n
    \end{equation*}
    و علت این است که
    \begin{equation*}
        (\mathbf{x},\mathbf{e}_i)=\displaystyle\xi_1 (\mathbf{e}_1,\mathbf{e}_i) +\cdots +\xi_n (\mathbf{e}_n,\mathbf{e}_i)=\xi_i (\mathbf{e}_i,\mathbf{e})=\xi_i (\mathbf{e}_i ,\mathbf{e}_i)=\xi_i (\mathbf{e}_i,\mathbf{e}_i )= \xi_i.
    \end{equation*}                                 
\end{document}       

我想为数学对象导入某些开放数学字体,正如这个简洁的建议回答。它们似乎在unicode-math软件包下工作,但在这项最小工作中它崩溃了。请问您该怎么办?感谢您的努力和时间!

答案1

您没有提供任何问题示例或显示您遇到了什么错误。如果不知道输入是什么,就很难调试“它崩溃了”。

我没有您使用的字体,但是如果我切换字体并添加一些针对 xepersion 与当前 latex 加载不兼容的修复,unicode-math则不会出现任何错误。

在评论中你说你想要 Asana-Math,所以:

在此处输入图片描述

如果您编辑问题以显示问题的示例,则调试会更容易。

\documentclass[a4paper,openany,12pt]{book}           
\usepackage[a]{esvect}                                
%\usepackage[utf8x]{inputenc}                       
\usepackage{amsmath,amssymb,amsthm,amsfonts}                   
\usepackage{mathrsfs,mathtools}                                                                               
\usepackage{fontenc}                                   
\usepackage{geometry}                           
\usepackage{fontspec}                    
\RequirePackage{hyperref}                    
\usepackage{etoolbox}           
\usepackage[computeautoilg=off]{xepersian}
% https://github.com/persiantex/xepersian/issues/17
\ExplSyntaxOn
\cs_set_eq:NN \etex_iffontchar:D \tex_iffontchar:D 
\def\c_one{1~}
\ExplSyntaxOff                    
\settextfont[Scale=1.1]{Arial}%{IRXLotus}                                                      
\setdigitfont[Scale=1.1]{Arial}%{IRXLotus}                                                                  
\setlatintextfont[Scale=1.1]{Times New Roman} 

\usepackage{unicode-math}
\setmathfont{Asana-Math.otf}
               
\begin{document}               
\chapter{بردارهای ویژه و مقادیر ویژه}                             
    بردار $\mathbf{x}$ و $\mathbf{y}$    بر حسب پایه‌ای متعامد از فضای $\mathfrak{L}$ با مجموع حاصل‌ضرب دوبه‌دو متناظر مختصات آن‌ها به‌دست می‌آید. حال $\mathbf{x}$ را از $\mathfrak{L}$ بگیرید. اگر $\mathop{\xi_i=(\mathbf{x},\mathbf{e}_i)}_{(1 \leqslant i \leqslant n)}$ فرض شود، آنگاه
    \begin{equation*}
        \mathbf{x}=\xi_1 \mathbf{e}_1 +\cdots +\xi_n \mathbf{e}_n
    \end{equation*}
    و علت این است که
    \begin{equation*}
        (\mathbf{x},\mathbf{e}_i)=\displaystyle\xi_1 (\mathbf{e}_1,\mathbf{e}_i) +\cdots +\xi_n (\mathbf{e}_n,\mathbf{e}_i)=\xi_i (\mathbf{e}_i,\mathbf{e})=\xi_i (\mathbf{e}_i ,\mathbf{e}_i)=\xi_i (\mathbf{e}_i,\mathbf{e}_i )= \xi_i.
    \end{equation*}                                 
\end{document}  

相关内容