我想在我的Qt表单中添加一些TeX文本,比如标签 - 只是文本,没有图表,没有行,没有边框,只有TeX.我想到这样的事情:将TeX渲染为位图,然后将该位图放在窗体上,例如放入QLabel.甚至更好 - 使用一些后端,将其添加到表单并使用某些东西tex_label.print_tex(<tex code>).似乎matplotplot有TeX解析器,但我无法弄清楚如何使用它们......
谢谢.
是否有任何python代码允许采用乳胶代码(方程式)并将其解析为mathml或svg代码?将字符串(乳胶代码)作为参数并输出字符串(svg或mathml代码)的简单函数将是完美的.
PS.我发现这个http://svgkit.sourceforge.net/SVGLaTeX.html但它是一个基于Web的项目,不知道如何使用它.
编辑:或任何语言(非强制python),或至少一个exe文件,可以通过命令行简单地执行(不安装其他东西).
使用python库matplotlib,我发现了这个问题的解决方案:通过利用matplotlibs TeX标记
在PyQt中显示(很好地)代数表达式.
我想做的是从我的python程序中获取代表数学表达式的TeX代码,并将其保存到可以在我的PyQt GUI中显示的图像,而不是用丑陋的纯文本显示方程式.
这样的东西基本上......
import matplotlib.pyplot as plt
formula = '$x=3^2$'
fig = plt.figure()
fig.text(0,0,formula)
fig.savefig('formula.png')
Run Code Online (Sandbox Code Playgroud)
但是,pyplot模块主要用于显示图形和图形,而不是我需要的文本样本.该代码的结果通常是一个巨大的白色空白图像左下角的一小部分文本.
如果我的公式涉及分数,因此需要向下空间,它将被截断,如下图所示.
请注意,这显示为空白图像; 查看显示的左侧坐标(0,0)处的
分数被截断并被空格包围
我相信我可以创建一个非常大(空间明智)的图形,在空白图的中间写出公式,保存它,并使用像素分析将其修剪为尽可能小的图像,但这看起来相当粗糙.
这些图是matplotlib的唯一预期输出吗?
有没有什么专门用于输出方程式,这不需要我担心文本的所有额外空间或位置?
谢谢!