正如在回答中建议的那样这个问题,我使用unicode-math
和XeLaTeX
来排版关系代数中不同类型的连接的符号。但是,当我命令\leftouterjoin
和时\rightouterjoin
(\fullouterjoin
如答案中所示),什么都没有显示。
这是MWE:
\documentclass{book}[serbian]
\usepackage{listings}
\usepackage{enumitem}
\usepackage{amsmath}
\usepackage{amsthm}
\usepackage{amssymb}
\usepackage{ifsym}
\usepackage{unicode-math}
\usepackage[utf8]{inputenc}
\usepackage{fontspec}
\usepackage{polyglossia}
\usepackage{hyperref}
\setmainlanguage[Script=Latin]{serbian}
\setmainfont{Times New Roman}
\newfontfamily\cyrillicfont{Times New Roman}
\let\cyrillicfonttt\ttfamily
\begin{document}
\chapter{Spajanje}
\[R \leftouterjoin S\]
\[R \rightouterjoin S\]
\[R \fullouterjoin S\]
\end{document}
输出如下:
我怎样才能解决这个问题?
答案1
你得到
Missing character: There is no ⟕ in font [latinmodern-math.otf]/OT:script=math;language=DFLT;!
Missing character: There is no ⟖ in font [latinmodern-math.otf]/OT:script=math;language=DFLT;!
Missing character: There is no ⟗ in font [latinmodern-math.otf]/OT:script=math;language=DFLT;!
在日志文件中,这意味着默认的 Unicode 数学字体没有符号。由于您使用 Times 作为文本字体,因此您还需要兼容的数学字体,而 Latin Modern 无论如何都不是。
添加\setmathfont{STIX2Math.otf}
将选择 STIX Two,它具有更全面的符号覆盖并且与 Times 兼容。
答案2
在我添加了这一行之后它就起作用了:
\setmathfont{xits-math.otf}