这不是一个编程问题,但它是关于一个编程环境,所以希望不是太不合适。我需要能够在Mathematica文本中编写化学公式(这是关于文本,而不是输入/代码)。类似于: H 3 O + 。但Mathematica似乎无法做到这一点。如果您使用普通的子/上标函数,或点击Cntl-_或Cntl-6,它会使您处于“数学模式”,即使您在文本中,因此字母变为斜体,并在3之间放置一个空格和O.像这样: H 3 O + 。丑陋,尤其是化学药品更长。
Mathematica中的其他功能与普通文字处理器一样 - 您可以将字体设置为斜体,粗体,大,小,彩色 - 但字处理器中常见的下标和上标功能似乎缺失。
我错过了什么吗?我希望如此......
感谢,
罗布
答案 0 :(得分:5)
您可以使用类似于LaTeX中使用的技巧来打印左侧的下标。这就是将下标放在没有宽度的对象上。
要输入数学模式,请键入Cntl-(并退出Cntl - 类型。)
将子和上标附加到⋮null⋮或⋮⋮或⋮ - ⋮(其中⋮=逃脱)
这是它的显示方式 - 与mathmode中的一些表达式相比:
我已将Cell Expression放在gist中。
答案 1 :(得分:4)
在ChemData中,Mathematica使用像
这样的结构 Style[
Row[
{Subscript["H",3],Superscript["O","+"]}
],
Rule[ScriptBaselineShifts,{0.5`,0.75`}]
]
示例:
HTH!