我使用exams2pdf()
生成两个PDF文件:
exams2pdf(file = "ICvar.Rmd",
name = "icvar",
engine = "knitr",
verbose = FALSE,
texdir = "tmptex",
template = c("exam", "solution")
)
但是我得到这个错误:
Error in base::file(out_tex[j], open = "w+", encoding = encoding) : invalid 'description' argument
知道为什么吗?
此外,是否可以在exams2nops()
中使用自定义模板,如template = c("exam", "solution")
来生成两个PDF文件,第一个带有问题;第二个是解决方案?我阅读了小插图,但找不到任何信息,并且在exams2nops()
中向选项添加模板没有任何作用。
问题是您只提供了一个name = "icvar"
,但实际上需要分别为template = "exam"
和template = "solution"
提供两个不同的name
。因此,缺少第二个name
会导致有些模糊的错误消息。一个简单的解决方案是提供一个包含两个name = c("icex", "icsol")
的向量,例如。
另外,我刚刚在R-Forge的开发版本上提交了一个修复,在?exams2pdf
中更清楚地指出了这一点,抛出了一个可理解的警告,并提供了一个解决方案。如果您使用上面的代码,name
将自动更改为name = c("icvar_exam", "icvar_solution")
。
对于exams2nops()
:在内部,这实际上是通过make_nops_template()
建立一个标准化的template
,然后调用exams2pdf()
。不能提供其他模板。这样做的原因是NOPS模板中所有方便的选项(例如,添加intro
,选择language
,切换到twocolumn
布局等)只适用于NOPS模板,而不适用于提供的其他模板。因此,如果您想生成一个解决方案表,您必须在设置与exams2nops()
相同的随机种子后,再次调用exams2pdf()
(或exams2html()
或exams2pandoc()
)。