siunitx 指令中的數學符號和 unicode-math 輸入

siunitx 指令中的數學符號和 unicode-math 輸入

我想做的是直接在 siunitx 命令中輸入 Unicode 字符,例如\SIrange{≳9}{≈40}{\kilogram}.但它不起作用,我收到類似的錯誤! Package siunitx Error: Invalid token '≳' in numerical input.

進一步看,輸入這些符號的標準指令並不適用於所有符號:\SIrange{\gtrsim9}{\approx40}{\kilogram};\gtrsim中斷但\approx被接受。

一些 MNWE:

\documentclass{standalone}

\usepackage{siunitx}
\usepackage{unicode-math}

\begin{document}
    \SIrange{≳9}{≈40}{\kilogram}\\
    \SIrange{\gtrsim9}{\approx40}{\kilogram}
\end{document}

我想做的事情有意義嗎?有沒有辦法做到這一點?

答案1

您可以將其他比較器新增至預設清單:

\documentclass{article}

\usepackage{siunitx}
\usepackage{unicode-math}

\sisetup{
  input-comparators = {
    < = > \approx \ge \geq \gg \le \leq \ll \sim % default
    \gtrsim ≳ ≈
  },
}

\begin{document}

\SIrange{≳9}{≈40}{\kilogram}

\SIrange{\gtrsim9}{\approx40}{\kilogram}

\end{document}

在此輸入影像描述

答案2

您可以設定parse-numbersfalse允許數字欄位中的任意代碼:

\documentclass{standalone}

\usepackage{siunitx}
\usepackage{unicode-math}

\begin{document}
  \SIrange[parse-numbers = false]{≳9}{≈40}{\kilogram}\\
  \SIrange[parse-numbers = false]{\gtrsim9}{\approx40}{\kilogram}
\end{document}

或者,您可以在中明確聲明符號\sisetup

\documentclass{standalone}

\usepackage{siunitx}
\sisetup{
  input-symbols=≈≳\gtrsim\approx
}
\usepackage{unicode-math}

\begin{document}
  \SIrange{≳9}{≈40}{\kilogram}\\
  \SIrange{\gtrsim9}{\approx40}{\kilogram}
\end{document}

相關內容