如何在Mathematica文本中使用上下标,例如:化学式?

6
这不完全是一个编程问题,但它涉及到一个编程环境,所以希望不会太离谱。我需要在Mathematica文本中写化学式(这是关于文本的具体问题,而不是输入/代码)。像这样:H3O+。但Mathematica似乎无法实现这一点。如果你使用普通的上标/下标函数或按Cntl-_或Cntl-6键,即使你在文本模式下,它也会将你置于“数学模式”中,因此字母变成斜体,并在3和O之间放置一个空格。像这样:H3 O+。难看,特别是对于更长的化学品。
Mathematica中的其他功能都像普通的文字处理器一样——你可以将字体设置为斜体、粗体、大号、小号、彩色——但是缺少文字处理器中常见的上标和下标功能。
我错过了什么吗?希望如此...
谢谢, 罗布

你在superuser.com上可能会有更多的好运气来解决这个问题。 - marshall.ward
2个回答

6
您可以使用类似于LaTeX在左侧打印下标的技巧。即将下标放在没有宽度的对象上。
输入数学模式,请键入 Cntl - (,退出请键入 Cntl -)。
将上下标附加到 ⋮null⋮ 或 ⋮ ⋮ 或 ⋮- ⋮(其中 ⋮ = 转义)
以下是它的显示方式 - 与数学模式中的一些表达式进行比较: the chemical formula for hydronium is HSubscript[[Null], 3]O[Null]^+ 我已经为您将单元格表达式放置在gist中。

4

在 ChemData 中,Mathematica 使用类似以下的结构

 Style[
     Row[
          {Subscript["H",3],Superscript["O","+"]}
        ],
          Rule[ScriptBaselineShifts,{0.5`,0.75`}]
      ]

例子:

替换文本

希望有所帮助!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接