我想用R-exams to 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##?
发布于 2020-11-19 05:46:11
当由MathJax渲染时,我没有找到一个可以在LaTeX数学中工作的解决方案。我的印象是,当数字填充空白字段插入到数学公式中时,MathJax呈现不起作用。
我看到了两种可能的解决方法:(1)对某些元素使用带有数学标记的{table}。(2)使用MathML,而不是MathJax (即火狐和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中如下所示:

https://stackoverflow.com/questions/64890373
复制相似问题