zoukankan      html  css  js  c++  java
  • 在博客园利用 MathJax 建支持 LaTeX 的博客

    终于找到了比较完美的在博客中支持 LaTeX 的方案。wordpress.com 虽然也支持 LaTeX,但是有 3 个缺点:

    1. wordpress.com 整个网站都被墙了,在上面建博客国内读者访问较为困难;
    2. wordpress.com 是利用 wordpress 的wp latex 插件支持 latex 的,必须使用 \$latex \$ 这样的格式,而不能直接使用 \$ \$ 来输入公式,这使得无法直接利用在其他地方已写好的 tex 源码;
    3. 生成的公式是图片格式的,不支持矢量缩放和拷贝。

    今天发现了一个在线生成 LaTeX 的利器:MathaJax,它支持多种数学公式语言,其中也包括 LaTeX,并且生成的公式支持矢量缩放和拷贝(复杂的公式拷贝后会变形)。但要在博客上获得 MathJax 的支持,必须要求博客空间提供自定义模板的功能,而大部分比较 popular 的国内免费博客空间,如新浪、网易、百度等都不提供该功能。最后找到了博客园支持自定义模板(另外据说点点也支持)。不过在对 MathJax 进行设置时又费了一番功夫。下面是我的设置代码。当你在博客园开通博客后,在博客管理的“设置”页面的“页首Html代码”处拷入下面的代码即可:

    <script type="text/x-mathjax-config">
    MathJax.Hub.Config({
    tex2jax: {
      inlineMath: [['$','$'], ['\\(','\\)']],
      processEscapes: true
      },
    TeX: {
                equationNumbers: {
                    autoNumber: ["AMS"],
                    useLabelIds: true
                }
            },
            "HTML-CSS": {
                linebreaks: {
                    automatic: true
                },
                scale: 85
            },
            SVG: {
                linebreaks: {
                    automatic: true
                }
            }
    });
    </script>
    <script type="text/javascript" src="https://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
    </script>

    其中的 scale: 85 是指公式大小的缩放比例,你可以根据需要进行调整。这样设置后你不但可以直接像在 LaTeX 中那样写行内公式和行间公式,而且还可以使用 LaTeX 的公式自动编号和引用的功能。

    这里是一个测试页面,可以看到生成的公式还是非常漂亮的。这里是我翻译和稍作改写的阿罗不可能性定理的证明。在 Ubuntu 下的 Chrome 浏览器、Firefox 浏览器和 Windows 下的 Firefox 浏览器下测试均显示正常,但在 IE 浏览器中公式下标会有显示不完整的情况,不知是不是我的个别现象,大家也帮忙测试一下。

    利用 MathJax 生成数学公式仍然有两个缺点:

    1. 生成公式的速度较慢;
    2. 在 RSS 阅读器中只能显示公式的源码,必须点击文章的原始链接才能看到公式。

    本文中的代码参考了http://zhiqiang.org/blog/it/mathjax-make-mathematics-beautiful.html,特此致谢!关于更多对 MathJax 的定制,请参考 MathJax 的帮助文档。

  • 相关阅读:
    C++优化和计算速度(碎碎念)
    架设一个p2p存储网络的问题(讨论)
    JAVA做敏感词统计——DFA 算法
    卸载Postman,用IntelliJ IDEA发起http请求
    LPC1788SDRAM调试
    ASP.NET网站大附件上传配置
    K2 Blackpearl中从数据库直接删除流程实例之K2Server表
    K2流程实例出错,切换到其他版本运行
    使用K2时提示未能加载文件或程序集Microsoft.IdentityModel等
    K2 Blackpearl中从数据库直接删除流程实例之K2ServerLog表
  • 原文地址:https://www.cnblogs.com/ilogic/p/latex.html
Copyright © 2011-2022 走看看