我已设法使用以下代码行制作字符上标:
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次方程式?
答案 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>
这将为您提供如下输出:
答案 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