首页 > 解决方案 > 在 R/examsexams2nops() 中用零填充初始学生 ID

问题描述

在使用该exams软件包为 NOPS 考试生成 PDF 文件时,我想编辑我的学生可用的位数 ( reglength)。我知道包裹只允许至少 7 位数字。但是,我们学生的身份证号码只有 5 位数字。因此,我想知道是否可以通过 PDF 操作(我尝试使用该staplr::get_fields()功能,但它不起作用)或任何其他方式编辑模板......我只是想添加0到前两个数字(即,00xxxxx)。

标签: rr-exams

解决方案


这是我现在在考试 2.4-0 中实施的一个好主意(撰写本文时的当前开发版本)。如果您reglength < 7现在指定 a,它仍然在内部强制为 7 - 因此在注册 CSV 文件中这个长度是必需的!但在试卷上,初始 ID 固定为“0”,并且相应的框已经打勾。

例如,以下代码会给您一个警告,但会产生以下输出:

exams2nops(..., reglength = 5)
## Warning message:
## In make_nops_page(n, nchoice = nchoice, reglength = reglength) :
##   'reglength = 5' too small, using 7 instead, but fixing initial IDs to 0

reglength 5的exams2nops

笔记:

  • 我还没有测试这些表格的扫描是否真的足够好,因为在可预见的未来我都在我的家庭办公室,无法使用合适的打印机/扫描仪。不过,我没有看到潜在问题的来源。
  • 我假设您指的是exams2nops()而不是exams2pdf()因此已相应地修改了您的问题。无论如何exams2pdf(),您都可能需要提供您的模板,并且可以以任何您喜欢的方式对其进行编辑,在您需要的地方添加零。

推荐阅读