使用 chemfig 套件的分隔符號問題

使用 chemfig 套件的分隔符號問題

這是我在這裡發表的第一篇文章,所以如果我做錯了什麼,請原諒。

\chemleft我在使用和命令時遇到問題\chemright。我使用LuaLaTeX來編譯。每當我嘗試編譯下面給出的 MWE 時,分隔符號看起來與我預期的不同。

\documentclass[11pt]{scrarticle}

\usepackage[no-math]{fontspec}
\setmainfont{Arial}
\usepackage[Arial]{mathfont}

\usepackage{chemfig}
\usepackage{siunitx}

\begin{document}
\chemleft[\chemfig{H-[1]O-[7]H}\chemright]

\qty{1}{\mole}
\end{document}

這是結果:

MWE 的輸出

我知道這是由於使用 Arial 作為字體引起的問題,但我將非常感謝任何建議,以防止這種情況發生,同時仍然使用 Arial 作為主要字體。

我還想在大多數文件中使用 siunitx-package,因此我使用 mathfont-package 以便在使用 例如 時實作 Arial 作為字體\qty{}{}

我將非常感謝任何針​​對我的問題的想法或解決方案,提前致謝!

編輯:我想要的分隔符號輸出如下圖所示:

在此輸入影像描述

這是透過省略 mathfont 套件來實現的:

\documentclass[a4paper,11pt]{scrarticle}


\usepackage[]{fontspec}
\setmainfont{Arial}
% \usepackage[Arial]{mathfont}

\usepackage{chemfig}
\usepackage{siunitx}

\begin{document}
\chemleft[\chemfig{H-[1]O-[7]H}\chemright]

\qty{1}{\mole}
\end{document}

但當然這不是我想要的 siunitx 套件的輸出,因為它不再使用 Arial 作為字體。

答案1

一種方法是僅將分隔符號定義為具有更美觀分隔符號的不同字體。該mathfont軟體包有用於此目的的命令,即\mathfont[delimiters]{Name Of Font}.但是,如果您已經設定了字體,\usepackage[Name Of Different Font]{mathfont}那麼它將不起作用,並且您會收到一條警告,表示分隔符號的字體已設定。您可以在使用 之前將對應的布林值(稱為 )設為\M@delimitersfalse 來強制重新定義\mathfont

MWE,使用 Nimbus Sans L(Arial 克隆)作為主要字體和數學字體,並使用 STIXSizeOneSym 作為分隔符號字體:

\documentclass[a4paper,11pt]{scrarticle}
\usepackage[no-math]{fontspec}
\setmainfont{Nimbus Sans L}
\usepackage[Nimbus Sans L]{mathfont}
\makeatletter
\M@delimitersfalse
\makeatother
\mathfont[delimiters]{STIXSizeOneSym}
\usepackage{chemfig}
\usepackage{siunitx}

\begin{document}
\chemleft[\chemfig{H-[1]O-[7]H}\chemright]

\qty{1}{\mole}

\end{document}

結果:

在此輸入影像描述

相關內容