WPF上标的上标

时间:2013-05-25 17:03:30

标签: c# wpf

我已设法使用以下代码行制作字符上标:

Paragraph p=new Paragraph();     
Span s = new Span();
s.BaselineAlignment = BaselineAlignment.Superscript;
s.Inlines.Add("2");
p.Inlines.Add(new Run("EXAMPLE 1 : Describe the behaviour of the function f(x)=(x"));
p.Inlines.Add(s);
p.Inlines.Add(new Run("-1)/(x-1) near x=1."));

但是可以写上标的上标吗?如下所示:

g(x)=(1+x^2)^(1/x^2)

这里第二个^将是上标的上标。怎么做到这一点? 另外让我知道是否有可能使程序理解x^2-1 = (x-1)(x+1),以及类似于这个等式的任何东西,甚至是n次方程式?

2 个答案:

答案 0 :(得分:4)

您可以将BaselineAlignment.Superscript与Typography.Variant =“superscript”结合使用,如下所示:

<Paragraph FontFamily="Palatino Linotype">
    <Run>g(x)=(1+x</Run>
    <Run Typography.Variants="Superscript">2</Run>
    <Run>)</Run>
    <Run BaselineAlignment="Superscript">(1/x</Run>
    <Run BaselineAlignment="Superscript" Typography.Variants="Superscript">2</Run>
    <Run BaselineAlignment="Superscript">)</Run>
</Paragraph>

这将为您提供如下输出: Equation

答案 1 :(得分:1)

这个项目看起来很有希望: http://blog.noldorin.com/2010/04/rendering-tex-math-in-wpf/

您的示例等式几乎可以用TeX表示法编写。请参阅:http://www.texrendr.com/?eqn=g(x)%3D(1%2Bx%5E2)%5E%7B(1%2Fx%5E2)%7D