【问题标题】:Greek fonts for KatexKatex 的希腊字体
【发布时间】:2016-08-08 13:08:47
【问题描述】:

我成功地在我的博客上使用了 katex 而不是 MathJax。然而,一些方程包含希腊符号,而 Katex 不包含用于呈现希腊字符的字体。 (Matjax 非常擅长渲染希腊字母) 是否有可用的 Katex 字体来渲染包含希腊字符的方程?如何使用这些字体(如何将它们与我网站上的 Katex 脚本一起包含在内)?

例如方程

hν0=hν+Ek+W(1)     

(ν is \nu) 用 mathjax 渲染得很好,但用 Katex 不行。

【问题讨论】:

  • KaTeX 是一个带有 github 问题跟踪器的开源项目,首先问这个问题的正确地方是那里,而不是这里。如果您已经有,请在此处链接到您的问题,但如果您还没有:通过询问运行项目的人有关他们项目的问题来帮助开源。 github.com/Khan/KaTeX/issues - 话虽如此,使用正确的 LaTeX 语法,这对我来说很好:imgur.com/6tW9D4Q
  • 我说过,等式中是 ν 符号(不是 \nu)。所以我不能用 katex 渲染希腊语 ν。
  • 在您的帖子中您说v is \nu,这令人困惑。是v,ASCII 字母,是实际的希腊字母nu(unicode 字母),还是LaTeX 命令\nu?因为如果你控制了内容,你就控制了函数使用什么,所以你可以很容易地使用正确的 LaTeX 语法。
  • 我的原始帖子已被编辑。 .最初等式是 hν0=hν+W(1) 包含希腊字母 ν。
  • 很公平,但是不要说“v 是 \nu”,因为 \nu 在 LaTeX 上下文中意味着某些东西,对于了解 LaTeX 的人来说,这种说法显然是不正确的:那里在您的 LaTeX 公式中没有 \nu。将来,值得更加小心并说类似“请注意,此公式使用 unicode:字母“v”是希腊字母 'nu' (u+03BD),而不是拉丁字母 'v' (U+0076 )”。然后是更技术性的说明:LaTeX 本身也会在这个公式上失败,除非你明确告诉它使用 inputenc 包。 XeLaTeX 工作,但 KaTeX 只移植 LaTeX

标签: javascript fonts mathjax katex


【解决方案1】:

KaTeX 目前不支持希腊字母作为输入,但正如评论所说,\nu 确实有效。更多详情请查看本期:Symbol unicode replacement doesn’t work

【讨论】:

    【解决方案2】:

    不同的公式渲染 js 库以 3 种不同的方式之一表现:

    • 处理\pi 并容忍π​​(MathJax;MathQuill,虽然结果有些不同)
    • 处理\pi,但不能容忍π​​(jsMath,KaTeX)
    • 不要处理 \pi 并容忍 π​​ (jqMath)

    不幸的是,就像 Ben 回答的那样,KaTeX 不是那种容忍原始希腊字符的。但是,您可以尝试以如下方式进行一些预解析以“修复”此问题:之前

    <script>renderMathInElement(document.body,{delimiters:
      [{left: "$", right: "$", display: false}]
    });</script>
    

    添加一些“替换”内容,例如描述的 here(将 π 替换为 \pi 等等),尽管您应该修改那里建议的 replaceTextOnPage 函数以一次替换所有希腊字母而不是启动副本replaceTextOnPage 多次。您可以进行一些其他优化,因为该解决方案具有一定的通用性,但您知道页面上的公式应该在哪里。

    【讨论】:

    • 是的,Yakovl,谢谢。尽管 katex 确实在 github.com/Khan/KaTeX/pull/410/files 中使用此脚本接受希腊字体,作者 kevinbarabash。我只是不知道如何使用它,但与您的脚本一起使用。
    • @user36636 好吧,这不是一个单独的脚本,这是对 KaTeX 本身的正在进行的更改,可能会在某个时候合并。自从一月份的最后一次活动以来,可能有必要在github.com/Khan/KaTeX/pull/410 询问事情的状态。或者,您可以自己更改文件并测试这些内容,但要将更改应用于您的博客,您需要在您的网站上拥有该库,而不是从外部包含它。
    猜你喜欢
    • 2011-08-28
    • 1970-01-01
    • 1970-01-01
    • 2014-11-02
    • 1970-01-01
    • 1970-01-01
    • 2022-11-17
    • 2016-04-02
    • 2013-09-30
    相关资源
    最近更新 更多