在网上写math方程式的最好方法是什么?
我正在研究与math相关的网页,并正在寻找一个解决scheme,将math方程式轻松写入网页。 目前有几种解决scheme可供我使用:
- 使用LaTeX并将其作为图像发布在我的网页上。
- 使用MathML
这两种解决scheme都不理想,似乎有些过时。 将图像replace为图像并不是一个好主意,MathML不符合所有的浏览器/操作系统。
我希望有一个现代的解决scheme来使用图像或MathML,可能是利用sIFR来显示math方程? 经过一番研究,我还没有find任何真正的解决办法。
请注意,我正在寻求一种发布方程式的新方法。 我不希望图像是在网页上显示的输出,而是将这些方程式呈现为文本数据。 MathML是我最近的,但它仍然不理想。 我想了一会儿是否可以利用sIFR等替代工具在Flash中创build方程式。 任何人都有这方面的build议吗?
编辑:自从我上次更新这篇文章以来已经有一段时间了,但随着浏览器采用HTML5,游戏中还有一个新玩家将LaTeX和MathML引入混合, MathJax! 。 MathJax绝对是要走的路!
类似的问题: 在网上的math方程
jsMath包是一个使用LaTeX标记和原生字体的选项。 从他们的网页引用http://www.math.union.edu/~dpvc/jsMath/ :
jsMath软件包提供了一种在HTML页面中包含math的方法,可以在Windows,Macintosh OS X,Linux和其他unix版本的多个浏览器上运行。 它克服了使用图像来表示math的传统方法的一些缺点:jsMath使用原生字体,因此当您更改浏览器中文本的大小时,它们将resize,以打印机的完整分辨率进行打印,而您不必等待几十个下载的图像才能看到网页中的math。 网页作者也有其优点,因为不需要预处理你的网页来生成任何图像,而math是以TeX的formsinput的,所以很容易创build和维护你的网页。
看例如这个页面或那个 。
我刚刚写了一个JavaScript模块来做到这一点,名为jqmath。 参见http://mathscribe.com/author/jqmath.html
这与MathJax类似,但更简单,更小,更快。
我一直在我的网站使用合并单元格的无边距表格来显示math方程式。 它对于大多数方程式来说非常好 但是,由于标记通常有点复杂,所以在核心math网站的情况下会很费时。
这里是代码:
<style type="text/css"> table.math{font:17px georgia, times, serif;border-collapse:collapse;border:none;} td.a{text-align:center;} td.b{padding:0 2px;} td.c{border-top:1px solid #505050;border-left:1px solid #505050;border-bottom:1px solid #505050;} td.d{border-top:1px solid #505050;border-right:1px solid #505050;border-bottom:1px solid #505050;} td.e{text-align:center;border-top:1px solid #505050;} </style> <table class="math"> <tr> <td class="a">1</td> <td class="b" rowspan="2">×</td> <td class="c" rowspan="2"> </td> <td class="a">8</td> <td class="b" rowspan="2">+</td> <td class="a">1</td> <td class="d" rowspan="2"> </td> </tr> <tr> <td class="e">x + 2</td> <td class="e">x + 2</td> <td class="e">x − 1</td> </tr> </table>
这是上面的代码的输出:
LaTeX已经在networking和学术界广泛使用来expression方程。
一个很好的例子就是维基百科看看这个例子。
http://en.wikipedia.org/wiki/Latitude
我知道这是一个普遍的看法,但是:使用图像是以浏览器兼容的方式在networking上实现许多事情的一种可行方法 – 只要您提供一些缺点即可。 (如谷歌地图,圆angular,图表,高级版式)
同样“过时”可以被解释为“尝试,testing和function完整”
感谢您指出sIFR – 我稍后会看到,我已经有了一个与它打交道的东西的列表,如打印? (html +图像可以做到这一点很好,可以sIFR?….)
我一直使用Confluence wiki的LaTeX插件在网上写公式(在Intranet上)。 它在Web浏览器中显示图像,但是如果编辑页面,您仍然可以看到LaTeX源代码。
我不知道你用什么来托pipe网站,但你也可以使用类似的方法:在页面中embeddedLaTeX源代码,并将其呈现为Web浏览器的图像。
MathTran是我遇到的最好的解决scheme:
我喜欢MathBin.net和罗杰的在线公式编辑器 。 后者可以让你控制输出的质量。
试试我的LaTeX2Flash解决scheme! 🙂
您可以直接在您的HTML页面中书写胶乳,并使用此库dynamic显示它:
http://www.codecogs.com/components/equationeditor/equationeditor.php
解决scheme是使用http://www.codecogs.com/components/equationeditor/equationeditor.php
该网站允许您inputLaTeX格式的公式,并使用其TeX服务器,它将公式转换为图像,您将能够在那里显示您的math公式。
让我告诉你一个例子,假设我想打印一个集成公式,我只是键入:
img style =“display:block; float:none; margin-left:auto; margin-right:auto”title =“\ int_ {a} ^ {b}(x + 2)dx”src =“http:// latex.codecogs.com/gif.latex?\int_{a}^{b}(x+2)dx”
参考上面代码的第三部分,LaTexmath公式插入到src =“ http://latex.codecogs.com/gif.latex??putputTeX Code here”的问号后面。
这将取决于你的主要目的和观众。
MathML(MathML2)看起来很有希望,但它在浏览器和MathML方程式编辑器(或生成器)中仍然存在很多兼容性问题。 许多复杂的等式不会在不同的浏览器中保持不变或显示相同。 许多math编辑器,转换器,发生器都说它们支持MathML。 但是结果不一样,尽pipe输出可能看起来相似。 在MathML 2中定义许多复杂的方程是不容易/不可能的。如果你只是有一些简单的方程,并且如果你可以让你的观众使用某个浏览器,那么这可能是一个select。 如果MathML3得到广泛的支持,那么MathML可能就是要走的路。
如果您的mathexpression式不是交互式的,不必dynamic生成),而页面上则是静态的,PNG或JPG图像可能是一个不错的select。 在大多数情况下图像的大小并不是那么大,在一个页面上显示几十个方程是相当快的,因为我们大多数人现在有高速互联网。 由于基于脚本的方程通常只有几KB,并且下载所有脚本后需要时间从本地计算机渲染图像,所以PNG图像与任何基于脚本的渲染方法之间没有太大的区别。 还有很多应用程序支持PNG或JPG方程图像的重新编辑。 MathMagic(www.mathmagic.com)支持可重编辑的PNG(透明PNG),GIF,JPG,BMP。 MathType(www.dessci.com)支持可重新编辑的GIF。 MathMagic也读取MathType图像。
如果需要一个基于vector的图像格式,如打印,高品质的输出,SVG可能是要走的路。 而且,在某些情况下,PDF可以是一个选项。 许多Mac公式编辑器支持PDF格式,因为它是一种(几乎本地的)Mac OS X格式。 但只有less数支持Windows上的PDF。 它看起来最新的MathType Mac版本支持PDF。 MathMagic支持Mac和Win上的PDF。 看起来MathMagic也支持SVG。
如果方程是由一些有限的作者创build的,有很多选项可以合并得到最好的结果。 如使用最新的MS Word内置的基于MathML / XML的公式编辑器,然后将页面转换为网页。 或者使用一些第三方所见即所得的公式编辑器(如MathType或MathMagic)进行快速编写和编辑,然后将公式保存为符合MathML,LaTeX或Wiki的公式格式,并在线等式渲染引擎中使用,如codecogs.com或MathJax。
如果内容还应该用于其他格式,例如eBook / ePub,则应该考虑其他因素,包括方程的质量以及与InDesign等解决scheme的集成。
如果有不正确的地方请纠正我。
iTex2Img是我用过的最好的一个。 这里是一个例子的截图。