c# - 如何在 WPF 标签或面板中显示数学表达式?

标签 c# xaml latex label mathml

我正在编写显示大量数学内容的软件。由于在 Windows 窗体中已经很难在标签中设置下标或希腊字母,所以我正在考虑切换到 WPF。

目前,我正在寻找在我的图形用户界面中呈现数学表达式、公式或符号的最佳方式。它们必须显示在标签或绘制的图形/图片中。没有实时/即时渲染,但有漂亮的修复符号。

最好的方法是什么?我想,MathML 应该得到很好的支持,但我找不到很多相关信息。我很乐意听到一些建议。

这里是我可以从中获取符号的地方(或者我更喜欢的地方):

  • LaTeX 代码(第一选择!代码已经存在,在软件和文档中出现相同的外观会很棒)
  • MathML 代码(Word 2007 或更高版本中的 LaTeX 代码 -> Word 方程式 -> 将纯 MathML 复制到剪贴板)
  • SVG(在 Inkscape 中渲染 LaTeX 并导出到 XAML)
  • xmcd 文件(Mathcad XML 文档。不知道如何,但至少它是 XML)
  • html 文件(由 LaTeX->html 或 Mathcad->html 编写

我个人不会考虑什么,但也许有很好的解决方案:

  • 图像(png-icons、pdfdviepssvg 直接进口)
  • 符号(例如从字符映射中粘贴的副本。不喜欢这些字体,找不到我需要的所有内容,也不会提供公式语法的交换)

我认为使用 LaTeX、MathML 或 html 会很棒,因为它们也可以用于文档。我也可以考虑将计算结果导出到 *.tex 文件或完全使用 LaTeX(tikz、pgfplots...)在内部生成图形

最佳答案

考虑使用开源 WPF-Math库(免责声明:我是它的当前维护者)。

它可以帮助您在 WPF 窗口中显示 LaTeX 表达式。它还使用矢量图而不是位图,因此公式可以在现代显示器上很好地缩放。

关于c# - 如何在 WPF 标签或面板中显示数学表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17860825/

相关文章:

c# - 如果需要很长时间取消请求的 Asp.net Core 中间件

c# - View 中的 IF..ELSE 语句在 ASP.NET MVC 中不受欢迎吗?

wpf - WinRT (C#/XAML) 不模糊缩放

latex - 在新环境中重新定义命令

latex - 从 LaTeX 中的超链接目录中删除框

c# - C# 中的多维数组搜索

c# - PATH 变量的 GetEnvironmentVariable() 和 SetEnvironmentVariable()

wpf - 从 XAML 初始化排序集合

wpf - WPF DataGrid列宽自动和滚动条

latex - LaTeX 中的排版逻辑证明