小数点を中心に、数字のフォント選択

小数点を中心に、数字のフォント選択

小数点付きの数字の列をフォーマットしたいと思います。本文では、数字に旧式の数字を使用し、数式には整列数字を使用しています。dcolumn表を使用する場合は、旧式の数字ではなく整列数字を使用します。

すでに定義をいじってみましたdcolumn.styが、ドットを「正しく」するために数式モードに依存しているようなので、すべての$- 文字を削除すると破損につながります。数式フォントを一時的に変更して古いスタイルの数字を使用するのもかなり難しいことのようです。これはすべてフォント パッケージの読み込み中に設定されます...

Isiunitxと一緒に使う\sisetup{mode=text}する古い形式の図を取得しますが、\figureversion{tab}表形式の図に切り替えるために使用する は無視され、図もきれいに揃いません。

dcolumn非数学モードで使用するか、siunitx古いスタイルの表形式の数字を使用するための良い提案はありますか?

siunitx を使用した最小限の例:

\documentclass{standalone}
\usepackage[mathlf]{MinionPro}
\usepackage{siunitx}
\sisetup{mode=text}
\begin{document}
{\figureversion{tab}
  \begin{tabular}{SSS[table-format=4.1]}
    {A wide heading} & $x$ & {more data} \\
    14.1 & 14.1 & 1111.1 \\
    1.674 & 1.671 & 4882.8 \\
  \end{tabular}}
\end{document}

答え1

ここに画像の説明を入力してください

\documentclass[12pt]{standalone}
\usepackage{dcolumn}  

\makeatletter  


\newcolumntype{O}[3]{>{\everymath{\mathgroup\symletters}\DC@{#1}{#2}{#3}}c<{\DC@end}}
\makeatother

\begin{document}


\begin{tabular}{cO..{-1}D..{-1}}
zzzz & 1.1 & 1.1\\
zzzz & 1.12 & 1.12\\
zzzz & 2341.1 & 2341.1\\
zzzz & 1.1043 & 1.1043
\end{tabular}
\end{document}

答え2

Davidの以前の回答へのコメントで、siunitxパッケージとその列タイプを使用するソリューションに興味を示しています。鍵となるのは、Sオプションを指定することです。これにより、detect-modeテキストフォント数学フォントではなく。

以下の回答では、テキストモードで古いスタイルの数字を使用するオプションkpfonts付きのパッケージを使用していますoldstylenums。環境本体はtabularDavidの回答と同じです。

ここに画像の説明を入力してください

\documentclass[12pt]{standalone}
\usepackage[oldstylenums]{kpfonts} % oldstyle tabular numbers in text mode, but not in math mode
\usepackage[table-format=4.4]{siunitx}
\begin{document}
\begin{tabular}{cS[detect-mode]S}
zzzz & 1.1 & 1.1\\
zzzz & 1.12 & 1.12\\
zzzz & 2341.1 & 2341.1\\
zzzz & 1.1043 & 1.1043
\end{tabular}
\end{document} 

関連情報