如何换行 siunitx 单元

如何换行 siunitx 单元

我为这个单位下了一条新命令:

\SI{#1(#3)e#2}{\KBE\per\gram\of{FM}}

但它太庞大了,而且 latex 似乎无法处理“正常”的换行符。因此,我的新 UNIT 有时会超出右边距的正常文本宽度

有没有siunitx办法解决这个问题,或者有其他解决方案?

答案1

答案很简单:不可以,您不能在单元内中断,只能在值和单元(选项allow-number-unit-breaks)的连接处中断。因此,要允许在此处的单元内中断,您需要手动将其(或至少其中的一部分)写出

\SI{#1(#3)e#2}{\KBE}\break\si{\per\gram\of{FM}}

较长的回答:当我写siunitx第二版时,我非常认真地考虑了这一点。“规则”规定,打破单位是坏的,但有时这是必要的。然而,想出一种方法来允许在这里中断,同时保留其他可以中断的东西siunitx,特别是不破坏第一版中已经起作用的东西,这是不可能的。在内部,整个单元都在一个(不可中断)中,\hbox让我处理粗体数学,这样做无法解决间距问题。

相关内容