我正在尝试这篇文章中的一些字体哪些 opentype 数学字体可用
我下载并安装了STIX两个
从http://stixfonts.org/已经用了几天了。看起来真的很棒。只是有时分数中的一些数学字母会互相碰撞。
比较此图像(下面将显示 MWE),比较 STIX 和 STIX 2 以及默认乳胶字体。注意分母如何接触其下方行中的数学
这是 MWE
\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{unicode-math}
\setmainfont{STIX Two Text}
\setmathfont{STIX Two Math}
%\setmainfont{XITS}
%\setmathfont{XITS Math}
\begin{document}
\[
G(x,s) = \left\{
\begin{array}[c]{ccc}%
\frac{\cos s}{\cos(1) }\sin(1-x) & & 0\leq s\leq x\\
\frac{\cos x}{\cos(1) }\sin(1-s) & & x\leq s\leq 1
\end{array}
\right.
\]
\end{document}
使用编译lualatex foo.tex
以下是默认的 Latex 字体:
问题是,有没有什么办法可以解决这个问题?这是字体中的错误吗?我发现当字母互相接触时,阅读起来会更困难。除此之外,这是一款不错的字体。我认为他们在分数线和分母之间留了太多空间。使用默认字体,间距要好得多。
为了安装字体,我从上面的链接解压了文件,并将 3 个字体文件夹复制到~./fonts
文件夹中。就是这样。这是在 cygwin 上。在 Windows 或 Mac 上,需要将字体移动到 opentype 字体文件夹所在的位置。
答案1
默认间距相当狭窄
你可以在使用 stix 2 时通过添加来打开数组
\renewcommand\arraystretch{1.3}
序言
虽然确实array
不适合这种布局,但它使用内联数学而不是显示,并且设计用于设置数组和矩阵,如果你恢复\arraystretch
默认并使用案例,那么你就会得到
\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{unicode-math}
\setmainfont{STIX Two Text}
\setmathfont{STIX Two Math}
\renewcommand\arraystretch{1.3}
%\setmainfont{XITS}
%\setmathfont{XITS Math}
\begin{document}
\[
G(x,s) =
\begin{cases}
\frac{\cos s}{\cos(1) }\sin(1-x) & 0\leq s\leq x\\
\frac{\cos x}{\cos(1) }\sin(1-s) & x\leq s\leq 1
\end{cases}
\]
\end{document}
或者也许使用 stix2 你应该稍微增加 baselinestretch,添加
\renewcommand\baselinestretch{1.1}
给出
\documentclass[11pt]{article}
\usepackage{amsmath}
\usepackage{unicode-math}
\setmainfont{STIX Two Text}
\setmathfont{STIX Two Math}
\renewcommand\baselinestretch{1.1}
%\setmainfont{XITS}
%\setmathfont{XITS Math}
\begin{document}
\[
G(x,s) =
\begin{cases}
\frac{\cos s}{\cos(1) }\sin(1-x) & 0\leq s\leq x\\
\frac{\cos x}{\cos(1) }\sin(1-s) & x\leq s\leq 1
\end{cases}
\]
\end{document}