今天我偶然发现了 dcolumn 的一个有趣的功能。
我使用 ITC Stone Serif 字体,因为它们已在我们的企业设计中定义。我通过 准备了一个 LaTeX 文档lualatex
,使用 Stone 字体。该文档还包含一个表格,使用D
来自包 的列dcolumn
。在D
-columns 中,LateX 使用与加载的 Stone 字体不同的字体。
我能够使用软件包复制该问题bookman
(因为 Stone 有版权,因此不能自由复制)。
更新 Ulrike Fischer 建议使用包siunitx
而不是D
-Column ,而是S
-column。我更新了我的 MWE 以采纳此建议。如您所见,-columnS
产生的结果(就字体而言)与D
之前的 -column 完全相同。(实际上,两者略有不同:在S
-column 中,输入使用逗号作为小数分隔符,而输出则使用点。)
这是我的更新MWE,我添加了包siunitx
和一个由列组成的表格S
。
\documentclass[12pt]{article}
\usepackage{bookman}
\usepackage{dcolumn}
\usepackage{siunitx}
\begin{document}
\begin{center}
12,34\\
\begin{tabular}{S}
12,34
\end{tabular}\\
\begin{tabular}{D{,}{,}{2}}
12,34
\end{tabular}
\end{center}
\end{document}%
这就是更新结果。
这是我原始问题文件的摘录,使用了石质字体:
在这种情况下,请比较数字“2”。
我如何才能实现使用默认字体(在本例中为 Stone)?
答案1
您只需要使用文本字体进行数字数学设置:
\documentclass[12pt]{article}
\usepackage{bookman}
\usepackage{dcolumn}
\makeatletter
\newcolumntype{T}[3]{>{\textfont0=\the\font\DC@{#1}{#2}{#3}}c<{\DC@end}}
\makeatother
\begin{document}
\begin{center}
12,34\\
\begin{tabular}{T{,}{,}{2}}
12,34
\end{tabular}
\end{center}
\end{document}%
或者最好也加上逗号,T{,}{\mbox{,}}{2}