如何在c#中格式化上标字符串
本文关键字:格式化 上标 字符串 | 更新日期: 2023-09-27 18:04:58
我需要在c#中格式化一些上标字符串(后面的代码),
例如,Input => 100输出=> 10^2
其中Output<string>
是Clr Property
我尝试了下面的代码片段,
TextBlock _textBlock = new TextBlock();
_textBlock.Text = "10";
_textBlock.Inlines.Add(new Run() { BaselineAlignment = BaselineAlignment.Superscript, Text = "2"});
由于上述情况下Typography
是只读属性,因此不能在代码中设置Typography.Variants
。
注意:请注意,这个问题不是关于渲染,这是关于阅读Text
作为string
。期望值为10^2
。当建议重复时,请检查其他问题地址。
当设置BaselineAlignment.Superscript
像上面提到的代码片段一样,它不像上标(小字体)一样呈现,而是在相同的FontSize
中呈现(相反,它看起来像为上标内容单独设置Margin属性,像new Thickness(0,0,0,FontSize)
)
上标2需要使用Unicode字符。看看这里:http://msdn.microsoft.com/en-us/library/aa664669%28v=vs.71%29.aspx
如果你想要一个字符串字面值,你可以使用:
var value = "10'xB2";
现场演示
在WPF中可以使用字体变体
设置wpf格式文本的上标和下标