数学模式中的嵌入式答案(完形填空、moodle)

Embedded answers in math mode (cloze, moodle)

我想用 R-exams 向 Moodle 创建问题。在我的例子中,我想使用 cloze 类型并将答案嵌入数学模式:

<<echo=FALSE,hide=TRUE>>=
@
\exname{foo}
\exsection{bar}
\extype{cloze}
\exclozetype{num|num}
\exsolution{1|1}
\begin{question}
  What are the answers?
  \[x_1=\frac{##ANSWER1##}{##ANSWER2##}\]
\end{question}

我可以构建与 Moodle 兼容的 XML 但是当我将其导入 Moodle 时出现错误:

我试过 \text{##ANSWER1##} 但结果相同。我想 MathJax 也想解析它。

如何在数学模式下使用 ##ANSWERx##

当 MathJax 渲染时,我没有找到在 LaTeX 数学中工作的解决方案。我的印象是当数字填空字段插入数学公式时,MathJax 渲染不起作用。

我看到两种可能的解决方法:(1) 对某些元素使用带有数学标记的 {table}。 (2) 使用 MathML 而不是 MathJax(即,在 Firefox 和 Safari 中工作,但在 Chrome 中不工作)。

1。请改用 {table}。

\begin{question}
What are the answers?

\begin{tabular}{rc}
        & ##ANSWER1##                        \
$x_1 =$ & \rule{\linewidth}{2\linethickness} \
        & ##ANSWER2##
\end{tabular}
\end{question}

\exname{frac}
\extype{cloze}
\exclozetype{num|num}
\exsolution{1|1}

如果您将上面的练习代码存储在名为 frac.Rnw 的文件中,则使用

exams2moodle("frac.Rnw")

并将其导入 Moodle 产量:

2。使用 MathML

\begin{question}
What are the answers?

\[ x_1 = \frac{\text{##ANSWER1##}}{\text{##ANSWER2##}} \]
\end{question}

\exname{frac}
\extype{cloze}
\exclozetype{num|num}
\exsolution{1|1}

如果将上述练习代码存储在frac.Rnw中,然后使用

exams2moodle("frac.Rnw", converter = "ttm")

生成的 Moodle 导入在 Firefox 中如下所示: