Moodle 包。定义和环境问题

Moodle 包。定义和环境问题

我正在 LaTex TexShop 4.27 下编写这个简单的测验

\documentclass[12pt]{article}
\usepackage{moodle}
\def\EN{{\bf A}}
\def\XV{3}
\def\YV{4}
%---------------------------
\begin{document}
\begin{quiz}{MyQuiz}
\begin{essay}{Question A}
Report on study case \EN\  with numerical values:
\begin{center}
\begin{tabular}{|c|c|} \hline
     $x$ & $y$  \\ \hline
     \XV & \YV  \\ \hline
\end{tabular}
\end{center}
  \item Case \EN\  with numerical values \XV,\YV
\end{essay}
\end{quiz}
\end{document}

我得到了一个不错的 pdf 文件。但是在 moodle.xml 文件中,定义的值没有出现在任何地方,问题主体是:

<text><![CDATA[<p>Report on study case \EN  with numerical values: <CENTER>\begin {tabular}{|c|c|} \hline \(x\) & \(y\) <BR/> \hline \XV & \YV <BR/> \hline \end {tabular}</CENTER> </p>]]></text>

在 moodle 中产生了这个丑陋的结果:

在此处输入图片描述

我的定义和表格环境发生了什么?

答案1

这就是软件包moodle文档所说的内容;特别是,无论是哪一种命令tabular或您的个人命令都不受支持。

在此处输入图片描述

答案2

如果你真的需要表格,我认为最好的解决方案是将其打包成图像。例如,参见这个答案

但是,对于您的宏,我发现有一个未记录的实用程序可以在写入 XML 文件之前声明它们以供包扩展:\htmlregister。对于您的情况,只需将其放在序言的末尾即可:

\def\EN{{\bf A}}
\def\XV{3}
\def\YV{4}
\htmlregister{\EN}
\htmlregister{\XV}
\htmlregister{\YV}

在软件包的开发版本中,我引入了触发所有随后使用(以及类似的东西)\moodleregisternewcommands定义的宏的扩展的命令。请参阅此\newcommand已修复问题。本例中的用法是:

\moodleregisternewcommands
\newcommand{\EN}{{\bf A}}
\newcommand{\XV}{3}
\newcommand{\YV}{4}

相关内容