LaTex for .NET

13

我正在使用ItextSharp生成PDF文档。在我们的输出内容中,有很多与数学相关的内容。也许我们可以使用某种Latex库将结果提供给ItextSharp以生成PDF文档。我已经搜索了一段时间,但没有找到任何信息。您是否知道是否存在.NET的Latex库?

此外,您是否知道ItextSharp能否在没有Latex帮助的情况下处理这些内容?


1
谷歌搜索“LaTex”会出现各种有趣但无关的结果;-) - Jose Basilio
4个回答

4
它可能还不存在,但为C#编译TeX不应该是一个难以实现的大型项目。原始的TeX是用Pascal的一种版本编写的,现在可以通过web2c自动转换为C。因此,仅需要进行一些“小规模的编程”,使web2c生成C#,并将支持库(kpathseapdftex中所需的部分,可能远不止这些)进行兼容性转换即可。
除此之外,似乎有一个 GSoC项目 Matplotlib的数学渲染引擎提取到一个单独的库中。假设该库将是纯Python,您可以通过 IronPython使用它。因此,如果您可以等到夏末,那可能正是您所需要的。

3

GSoC项目负责人回复了我关于将Mathtext外部化到一个名为MathTex的新Python库的新项目。

他说,他的工作依赖于一个称为FT2FONT的库,它是一个C++库的包装器。对于那些具有良好 .net 字体知识的人来说,使用这个包装器将工作包装到 .net 字体库中,并允许它在IronPython中使用是微不足道的。


2
你最好的选择可能是自己动手。
可能只需要制作一个基本模板,然后执行以下操作:
1.将表达式插入模板中。
2.使用“pdflatex”进行编译。
3.将生成的pdf文件插入到你的文档中。
另一种选择是查看其他应用程序的源代码。维基媒体(维基百科背后的软件)可以使用LaTeX后端来生成数学公式,并且它是开源的,所以你可以看看他们是如何做的。

1
另外还可以看一下Matplotlib的类似TeX的引擎 - 它是用Python编写的,虽然Matplotlib使用了Numpy和其他扩展,所以你不能直接在IronPython中使用它,但将数学渲染引擎制作成独立库可能是一个相当容易的项目。我记得曾经有一个GSoC项目就是要做这个,但学生在最后一刻找到了一份真正的工作。 - Jouni K. Seppänen
1
嘿,GSoC 2009有一个新项目已经被接受,与我们的目标相同!我会编辑我的答案并添加链接。 - Jouni K. Seppänen

1
我会考虑使用一个包装库。除非你想要编写像 LaTeX 编辑器这样的大型程序,否则你可能只需要一个小的子集。我建议看看 texnet free (www.texdotnet.com)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接