【发布时间】:2010-10-08 03:23:32
【问题描述】:
我正在开发一个应用程序,该应用程序需要某种下标和上标支持来显示引用化学式的文本,如果我在文本框 (winforms) 中执行此操作并想要例如显示水公式,它将显示为 H20 而不是比 H(下标 2)O (对不起,我在这里找不到怎么做)。怎么可能做到这一点?谢谢。
【问题讨论】:
标签: winforms unicode textbox special-characters
我正在开发一个应用程序,该应用程序需要某种下标和上标支持来显示引用化学式的文本,如果我在文本框 (winforms) 中执行此操作并想要例如显示水公式,它将显示为 H20 而不是比 H(下标 2)O (对不起,我在这里找不到怎么做)。怎么可能做到这一点?谢谢。
【问题讨论】:
标签: winforms unicode textbox special-characters
运行 Windows Charmap.exe 小程序。勾选高级视图复选框并在搜索框中键入“二”。您应该看到“下标二”字形,Unicode 代码点 '\u2082'。单击选择并复制。切换到您的代码或“属性”窗口,然后键入“H”+ Ctrl+V+“O”以获取“H₂O”。
【讨论】:
每个文本框都可以显示任何 unicode 单词。唯一的限制是通过 QWERTY 键盘(具有简单和日常字符)您将无法插入 Subscript
解决办法是什么?
您必须使用将这些化学字形实现为字符的键盘布局。它应该是 Unicode。我不确定你能找到这样的键盘布局。
有什么选择?
您可以使用一些工具来编写 unicode 文本,然后将最终文本复制到文本框并保存并显示给用户。
Windows CharMap 是您可以使用的最简单的工具之一。但每次只能将一个字符复制到文本框中。
我建议你使用Unicode Converter,它是一个由codeplex托管的开源工具,可以让你创建复杂的文本,然后你可以将最终的结果复制到你的文本框中。
重要提示
您使用的每个字符在特定字体上都有一个字形。我见过的最复杂的 Unicode 字体是 Arial Unicode MS Regular,它是 Arial 的扩展,所以我强烈建议在这种情况下使用这种字体。如果您使用其他字体,则应确保您的客户将其安装在他们的系统上。
【讨论】: