在博客里轻松使用LaTeX数学公式

在博客里轻松使用LaTeX数学公式


笔者最近的博文有不少数学相关内容,发现利用一些网上服务、jQuery和CSS,可以更轻松地在博客里使用语法排版方程式。是基于的排版系统。而就是美国著明计算机教授高德纳(Donald E. Knuth),为了编写他的巨著《计算机程序设计艺术(The Art of Computer Programming)》而设计的系统,对于数学公式的排版支援十分强大。
线上LaTeX数学公式编辑器 笔者最初使用这个线上LaTeX数学公式编辑器,输入公式时,就会产生一个影像档案(如GIF、PNG、SVG),把该HTML代码复制到博客即可。例如:
?

1 \sqrt{a^2+b^2}
选择输出为HTML,该编辑器就会产生以下的HTML代码:
?
1 < img src = "http://latex.codecogs.com/gif.latex?\sqrt{a^2+b^2}" title = "\sqrt{a^2+b^2}" />
这HTML码就能显示该公式

这个方法已算不错了,但还有3个小问题:
  1. 每次修改,都要从IMG找到代码,复制过去编辑器,再复制过来,比较麻烦。
  2. 希望像一般技术书籍,为公式加入编号,方便评论和沟通时使用。
  3. 万一想改变生成影象的服务、输出格式、大小设置等,就要修改每个地方。
于是,笔者想到使用jQuery,把放置代码的特定的HTML标记,自动变换成IMG标记,并使用CSS作编号。
jQuery作转换 笔者最近才得知jQuery,是百分百新手,请各位不吝赐教。
现时希望支持两种数学公式,一种是文字中的内联(inline)公式,另一种是整行独占的公式。笔者分別采用span和div标记,并共同使用math作为class:
?
1 2 < span class = "math" >latex code span > < div class = "math" >latex code div >
之后,就使用以下JavaScript代码,在网页载入后做这个转换:
?
1 2 3 4 // math.js $(document).ready( function () { $( ".math" ).each( function (i) { $( this ).html( "在博客里轻松使用LaTeX数学公式
文章图片
,可用
(可看到h2标记把计方程数器重置,使编号变成(5.1)。)
结语 对于简单的公式,笔者现在可以直接使用HTML编辑器输入代码,修改也容易。透过CSS把显示的格式和内容分离,将来改变皮肤、或影象生成服务等也变得容易。
一个缺点是,读者透过RSS等方式,只能看见源码。
读者可于这里下载代码。
关于的进阶公式输入方法,可参考中文维基:数学公式
祝写博愉快!
来自:http://www.cnblogs.com/miloyip/archive/2010/04/26/1720877.html
【在博客里轻松使用LaTeX数学公式】

    推荐阅读