我们做一个子功能要求在WPF中显示化学分子式,,结果发现化学分子式一般都有下标,用输入法输了半天都输不了,然后经过GOOGL人肉后,发现其实实现也挺简单的。
下面就以TextBlock的实现为例子:
首先定义一个TextBlock,设置FontSize大小,然后在Content中设置要显示的文件下标例如:
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 <TextBlock FontSize="30" Height="50" FontFamily="Palatino Linotype">
2 R<Run BaselineAlignment="Superscript" FontSize="12pt">2</Run>
3 </TextBlock>
关键就在于这个<Run BaselineAlignment="Superscript" FontSize="12pt">2</Run>这句代码,FontSize设置比母的TextBlock小,BaselineAlignment="Superscript" 说明要显示成上标,而如果为BaselineAlignment="Subscript" 则显示为下标,根据自己的喜好调整相应的字体大小等。总算把WORD的上下标搬到WPF中了。
最终的效果图如下:
怎样跟WORD的上下标差不多了吧。