首页 > 解决方案 > LaTeX 符号未正确转换为 Moodle

问题描述

当我exams2moodle()用来生成完形填空测验时,无法正确生成 LaTeX 符号。

示例:(在 .Rmd 文件中): ...$\hat{p}$

在 Moodle 中,它表现为: \hat{p}

(观察:它适用于exams2html()。)

它被转换为: <math display="inline" xmlns="http://www.w3.org/1998/Math/MathML"><semantics><mover><mi>p</mi><mo accent="true">^</mo></mover><annotation encoding="application/x-tex">\hat{p}</annotation></semantics></math>

最后:如果我在 Moodle 中编辑问题并更改为$$\hat{p}$$,则一切正常。但是这样一来,我就会有很多版本,这很糟糕。

标签: rr-exams

解决方案


对于在 R/exams 中基于 HTML 的输出中包含 LaTeX,没有单一的最佳解决方案。所有解决方案都有潜在的缺点。

  • 默认情况下,exams2moodle()将数学方程转换为可以由各种浏览器直接呈现的 MathML(推荐使用 Firefox)。优点: MathML 在 Firefox 中看起来不错,并且在服务器端或客户端都不需要进一步的支持。缺点:在某些浏览器中不起作用,特别是在 Chrome 中不起作用。

  • 作为替代方案,方程也可以嵌入到 LaTeX 中并由 MathJax 呈现(在服务器端,即不是由浏览器)。优点:适用于所有浏览器。缺点:需要在服务器上安装并使用 MathJax 脚本。用户需要在浏览器中启用 JavaScript。

由于 MathJax 似乎在您的 Moodle 安装中可用,我建议在您的练习中利用它(这也将解决您报告的问题)。这可以简单地通过

exams2moodle(..., converter = "pandoc-mathjax")

编辑:现在可以在 http://www.R-exams.org/tutorials/math/获得更详细的解释。


推荐阅读