3

我想在 R markdown 中使用 circuitikz 包和 r-exams 生成电路图片。我已经在 header-includes 中包含了 circuitikz 包,使用时成功knit

但是在执行时exams2pdf,这是我得到的错误,,

 LaTeX Error: Environment tikzpicture undefined.

执行exam2moodleexam2html没有错误,但它不包括电路图像

任何替代解决方案?

4

1 回答 1

0

为什么你的尝试没有奏效

额外的 LaTeX 包不能包含在练习本身中(例如,忽略 YAML 标头),原因有两个:

  1. 练习仅针对某些界面(尤其是exams2pdfexams2nops)使用 LaTeX 进行处理,但不适用于大多数其他界面。在后一种情况下,添加更多的 LaTeX 包并不简单。

  2. 即使使用exams2pdfexams2nops练习只是最终处理的 LaTeX 文档的片段。因此,个人练习对整个 LaTeX 文档的控制相对较少。(因此,YAML 标头不用于个人练习。)

另见相关讨论:

如何包含 TikZ 图形

在 R/exams 练习中包含 TikZ 图形时,了解该练习应该使用哪些接口非常重要。需要一些额外的努力才能使练习对所有exams2xyz接口都可行。工作示例包括在:

这两个都依赖于include_tikz()包中的函数。这通过 LaTeX 预处理 TikZ 代码,并根据用于 R 图形块的图形格式以及通过match_exams_device().

或者,您也可以通过 LaTeX 代码并确保在 LaTeX 模板中加载了必要的 TikZ 包。其中exams2pdf有一个template =论点,最好从复制和修改包附带的模板之一开始。请参阅第 3 节vignette("exams", package = "exams")exams_skeleton(write = "exams2pdf", ...)应该可以帮助您开始。您可以通过参数exams2nops传递必要的 LaTeX 代码header =,然后将其插入使用的模板中exams2nops

于 2020-09-02T16:26:34.447 回答