![SourceSansPro:投影仪演示文稿中的表格数字](https://linux22.com/image/390391/SourceSansPro%EF%BC%9A%E6%8A%95%E5%BD%B1%E4%BB%AA%E6%BC%94%E7%A4%BA%E6%96%87%E7%A8%BF%E4%B8%AD%E7%9A%84%E8%A1%A8%E6%A0%BC%E6%95%B0%E5%AD%97.png)
我正在显示一些数据pgfplotstable在我的历史课的投影仪演示中。
主要字体是源SansPro\usepackage[semibold]{sourcesanspro}
。我将其与普通文本的默认内衬数字一起使用。
但我想在表格中使用表格数字。看来我无法将数学模式字体更改为使用 SourceSansPro-TLF,这是等宽数字的变体。在以下示例中,它仅适用于string type
列。
\documentclass{beamer}
\usepackage{pgfplotstable}
\usepackage{sourcesanspro}
\usepackage[T1]{fontenc}
\begin{document}
Louis XIV was born in 1638.
\newcolumntype{i}{>{\fontfamily{SourceSansPro-TLF}\selectfont}r}
\pgfplotstabletypeset[%
fixed,
column type=i,
columns/A/.style={string type},
]{%
A B C
123121 121121 718121
456324 314123 192322
789425 141425 212422
101121 161121 223121
}%
He died in 1715.
\end{document}
结果如下:
我想要像第一列那样的 SourceSansPro 表格数字,以及像数学模式列那样的千位分隔符。
答案1
使用unicode-math
,您可以\addfontfeature
在文本模式下选择表格图形,在数学模式下选择表格图形。请注意,该sourcesanspro
包在某些引擎上默认使用 OTF!
\documentclass{beamer}
\usepackage{pgfplotstable}
\usepackage{unicode-math}
\usepackage{sourcesanspro}
\pgfplotsset{compat=1.16}
\setmathfont{Fira Math} % Or your preferred default.
\setmathfont[range=up]{SourceSansPro-Regular.otf}
\setmathfont[range=it]{SourceSansPro-RegularIt.otf}
\setmathfont[range=bfup]{SourceSansPro-Bold.otf}
\setmathfont[range=bfit]{SourceSansPro-BoldIt.otf}
\begin{document}
Louis XIV was born in 1638.
% For most fonts, you would select the font feature Numbers=Tabular (tnum).
% Source Sans Pro is unusual in that it does not support the tnum OpenType
% feature, but makes it the default. Selecting it will still work, but
% turning the pnum feature off instead suppresses numerous spurious error
% messages.
\newcolumntype{i}{>{\addfontfeature{RawFeature = -pnum}}r}
\pgfplotstabletypeset[%
fixed,
column type=i,
columns/A/.style={string type},
]{%
A B C
123121 121121 718121
456324 314123 192322
789425 141425 212422
101121 161121 223121
}%
He died in 1715.
\end{document}
如果您希望能够在数学模式下在表格数字和比例数字之间切换,您需要做的是设置一个表格数学版本。不幸的是,截至 2019 年 3 月,选项range=
无法\setmathfont
在数学版本中正常工作。
简单重复一下我在评论中所说的内容,您通常会添加功能Numbers=Tabular
,或tnum
。Source Sans Pro 的不同寻常之处在于它不支持该功能,您可以通过关闭该pnum
功能来选择表格数字。 (Numbers = Tabular
仍然有效,但会显示许多虚假错误消息。)