diff --git a/WpfTex/LatexEditor/MainWindow.xaml b/WpfTex/LatexEditor/MainWindow.xaml index 79cbe7d..161dde3 100644 --- a/WpfTex/LatexEditor/MainWindow.xaml +++ b/WpfTex/LatexEditor/MainWindow.xaml @@ -7,27 +7,14 @@ mc:Ignorable="d" Title="MainWindow" Height="350" Width="525"> - - - + + e^{\pi i}=-1\quad\{\textrm{in the complex plane} \\\\ + a^x+a^y=a^{x+y} \\ - - log_ax^n=nlog_ax \\ - - M^1_2 - - - - - - - - - - - - - + log \sub b x \sup {n} = n \, log_b x \\ + log \sub b x \sup n = n \, log_{b} x \\ + + M^1_2 diff --git a/WpfTex/LatexEditor/Parser/Segments/LatexSegment.cs b/WpfTex/LatexEditor/Parser/Segments/LatexSegment.cs index 7aeb774..6a951b3 100644 --- a/WpfTex/LatexEditor/Parser/Segments/LatexSegment.cs +++ b/WpfTex/LatexEditor/Parser/Segments/LatexSegment.cs @@ -67,29 +67,34 @@ namespace LatexEditor.Parser.Segments val = new LatexGlyph(CmFont.Serif, LatexParser.GreekLetters[head.Value]); if (LatexParser.Spaces.ContainsKey(head.Value)) val = new LatexSpace(LatexParser.Spaces[head.Value]); - if (head.Value == "^") + switch (head.Value) { - if (PopLatexSegment(tokens, out var content)) - { - val = content; - val.Size *= 0.7; - val.Offset = new Point(val.Offset.X, val.Offset.Y + 0.45); - } - } - if (head.Value == "_") - { - if (PopLatexSegment(tokens, out var content)) - { - val = content; - val.Size *= 0.7; - val.Offset = new Point(val.Offset.X, val.Offset.Y - 0.45); - } + case "^": + case "sup": + if (PopLatexSegment(tokens, out var content)) + { + val = content; + val.Size *= 0.7; + val.Offset = new Point(val.Offset.X, val.Offset.Y + 0.45); + } + break; + case "_": + case "sub": + if (PopLatexSegment(tokens, out content)) + { + val = content; + val.Size *= 0.7; + val.Offset = new Point(val.Offset.X, val.Offset.Y - 0.45); + } + break; } break; case "escape": if (head.Value == "\\") val = new LatexReturn(); + else + val = new LatexGlyph(CmFont.Serif, head.Value[0]); break; }