包含 TikZ 图片时无法使用 exams2moodle 生成考试
Unable to generate exam with exams2moodle when including TikZ picture
我正在尝试在我的新笔记本电脑上使用 exams2moodle
生成考试。在我的旧笔记本电脑上一切正常(并且仍然有效),但在新笔记本电脑上(我有完全相同的配置,但显然缺少一些东西),即使我尝试 运行 最简单的模板R/exams exams2moodle("automaton.Rnw")
中的 TikZ 图我收到错误消息
Error in magick_image_readpath(enc2native(path), density, depth,
strip, : rsession.exe: PDFDelegateFailed `El sistema no puede
encontrar el archivo especificado. ' @ error/pdf.c/ReadPDFImage/809
我已经检查了我的安装,也看到了有类似问题的各种帖子,但一直无法修复。知道可能出了什么问题吗?非常感谢您
编辑:这是我的会话信息
R version 4.0.2 (2020-06-22)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 19041)
Matrix products: default
locale:
[1] LC_COLLATE=Spanish_Spain.1252 LC_CTYPE=Spanish_Spain.1252 LC_MONETARY=Spanish_Spain.1252 LC_NUMERIC=C
[5] LC_TIME=Spanish_Spain.1252
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] magick_2.4.0 mgsub_1.7.2 ICSNP_1.1-1 ICS_1.3-1 mvtnorm_1.1-1 plotrix_3.7-8
[7] Ryacas_1.1.3 FRACTION_1.0 stringr_1.4.0 Deriv_4.0.1 ggplot2_3.3.2 plot3D_1.3
[13] scatterplot3d_0.3-41 MASS_7.3-53 latex2exp_0.4.0 permute_0.9-5 mpoly_1.1.1 polynom_1.4-0
[19] pracma_2.2.9 numbers_0.7-5 exams_2.3-6
loaded via a namespace (and not attached):
[1] Rcpp_1.0.5 lattice_0.20-41 tidyr_1.1.2 assertthat_0.2.1 rprojroot_1.3-2 digest_0.6.25
[7] gmp_0.6-0 R6_2.4.1 plyr_1.8.6 backports_1.1.10 survey_4.0 evaluate_0.14
[13] pillar_1.4.6 rlang_0.4.7 misc3d_0.9-0 rstudioapi_0.11 Matrix_1.2-18 rmarkdown_2.3
[19] desc_1.2.0 splines_4.0.2 partitions_1.9-22 munsell_0.5.0 tinytex_0.26 compiler_4.0.2
[25] xfun_0.17 pkgconfig_2.0.3 htmltools_0.5.0 tcltk_4.0.2 mitools_2.4 tidyselect_1.1.0
[31] tibble_3.0.3 crayon_1.3.4 dplyr_1.0.2 withr_2.3.0 grid_4.0.2 gtable_0.3.0
[37] lifecycle_0.2.0 DBI_1.1.0 orthopolynom_1.0-5 magrittr_1.5 scales_1.1.1 stringi_1.5.3
[43] testthat_2.3.2 ellipsis_0.3.1 generics_0.0.2 vctrs_0.3.4 tools_4.0.2 glue_1.4.2
[49] purrr_0.3.4 pkgload_1.1.0 survival_3.1-12 colorspace_1.4-1 knitr_1.30
概览
感谢您仔细研究问题并在此处报告。正如您已经解决的那样,问题不直接出在 R/exams 中的代码中,而是出在 magick::image_read()
中,它在某些设置中无法正常工作。也感谢您向 magick
维护者 Jeroen Ooms 报告此事。
错误修复 magick
为了回应您提交的问题,Jeroen 已在 GitHub 上使用新的和更新的 ImageMagick 二进制文件更新了 magick
软件包,请参阅:https://github.com/ropensci/magick/pull/276。请 GitHub re-install magick
来解决问题。
exams
中的解决方法
避免使用 magick
的潜在解决方法可能是将 TikZ PDF 输出转换为 SVG 而不是 PNG。在那种情况下,pdf2svg
(和 pdfcrop
)需要在 PATH 上(另请参阅注释以获取更多详细信息)。要尝试使用
exams2html("automaton.Rnw", svg = TRUE)
或用 exams2moodle()
代替 exams2html()
。 (后者更容易快速检查输出。)
链接
- GitHub 上
magick
项目中的问题:https://github.com/ropensci/magick/issues/272。
- 我们的 R/exams 论坛 R-Forge 上的类似讨论:https://R-Forge.R-project.org/forum/forum.php?thread_id=34042&forum_id=4377&group_id=1337。
我正在尝试在我的新笔记本电脑上使用 exams2moodle
生成考试。在我的旧笔记本电脑上一切正常(并且仍然有效),但在新笔记本电脑上(我有完全相同的配置,但显然缺少一些东西),即使我尝试 运行 最简单的模板R/exams exams2moodle("automaton.Rnw")
中的 TikZ 图我收到错误消息
Error in magick_image_readpath(enc2native(path), density, depth, strip, : rsession.exe: PDFDelegateFailed `El sistema no puede encontrar el archivo especificado. ' @ error/pdf.c/ReadPDFImage/809
我已经检查了我的安装,也看到了有类似问题的各种帖子,但一直无法修复。知道可能出了什么问题吗?非常感谢您
编辑:这是我的会话信息
R version 4.0.2 (2020-06-22) Platform: x86_64-w64-mingw32/x64 (64-bit) Running under: Windows 10 x64 (build 19041)
Matrix products: default
locale: [1] LC_COLLATE=Spanish_Spain.1252 LC_CTYPE=Spanish_Spain.1252 LC_MONETARY=Spanish_Spain.1252 LC_NUMERIC=C
[5] LC_TIME=Spanish_Spain.1252
attached base packages: [1] stats graphics grDevices utils datasets methods base
other attached packages: [1] magick_2.4.0 mgsub_1.7.2 ICSNP_1.1-1 ICS_1.3-1 mvtnorm_1.1-1 plotrix_3.7-8
[7] Ryacas_1.1.3 FRACTION_1.0 stringr_1.4.0 Deriv_4.0.1 ggplot2_3.3.2 plot3D_1.3
[13] scatterplot3d_0.3-41 MASS_7.3-53 latex2exp_0.4.0 permute_0.9-5 mpoly_1.1.1 polynom_1.4-0
[19] pracma_2.2.9 numbers_0.7-5 exams_2.3-6
loaded via a namespace (and not attached): [1] Rcpp_1.0.5 lattice_0.20-41 tidyr_1.1.2 assertthat_0.2.1 rprojroot_1.3-2 digest_0.6.25
[7] gmp_0.6-0 R6_2.4.1 plyr_1.8.6 backports_1.1.10 survey_4.0 evaluate_0.14
[13] pillar_1.4.6 rlang_0.4.7 misc3d_0.9-0 rstudioapi_0.11 Matrix_1.2-18 rmarkdown_2.3
[19] desc_1.2.0 splines_4.0.2 partitions_1.9-22 munsell_0.5.0 tinytex_0.26 compiler_4.0.2
[25] xfun_0.17 pkgconfig_2.0.3 htmltools_0.5.0 tcltk_4.0.2 mitools_2.4 tidyselect_1.1.0
[31] tibble_3.0.3 crayon_1.3.4 dplyr_1.0.2 withr_2.3.0 grid_4.0.2 gtable_0.3.0
[37] lifecycle_0.2.0 DBI_1.1.0 orthopolynom_1.0-5 magrittr_1.5 scales_1.1.1 stringi_1.5.3
[43] testthat_2.3.2 ellipsis_0.3.1 generics_0.0.2 vctrs_0.3.4 tools_4.0.2 glue_1.4.2
[49] purrr_0.3.4 pkgload_1.1.0 survival_3.1-12 colorspace_1.4-1 knitr_1.30
概览
感谢您仔细研究问题并在此处报告。正如您已经解决的那样,问题不直接出在 R/exams 中的代码中,而是出在 magick::image_read()
中,它在某些设置中无法正常工作。也感谢您向 magick
维护者 Jeroen Ooms 报告此事。
错误修复 magick
为了回应您提交的问题,Jeroen 已在 GitHub 上使用新的和更新的 ImageMagick 二进制文件更新了 magick
软件包,请参阅:https://github.com/ropensci/magick/pull/276。请 GitHub re-install magick
来解决问题。
exams
中的解决方法
避免使用 magick
的潜在解决方法可能是将 TikZ PDF 输出转换为 SVG 而不是 PNG。在那种情况下,pdf2svg
(和 pdfcrop
)需要在 PATH 上(另请参阅注释以获取更多详细信息)。要尝试使用
exams2html("automaton.Rnw", svg = TRUE)
或用 exams2moodle()
代替 exams2html()
。 (后者更容易快速检查输出。)
链接
- GitHub 上
magick
项目中的问题:https://github.com/ropensci/magick/issues/272。 - 我们的 R/exams 论坛 R-Forge 上的类似讨论:https://R-Forge.R-project.org/forum/forum.php?thread_id=34042&forum_id=4377&group_id=1337。