我有R軟件包,它的一個函數 - 生成報告。 在安裝/降價我有一個模板rep.rmd 在包裝功能ProduceReport()我有這樣的代碼:當output_file路徑是絕對路徑時,rmarkdown :: render導致錯誤
render.file <-"rep.Rmd"
render.file <- system.file(TEMPLATES.PATH, render.file, package=getPackageName())
render.dir <- dirname(render.file)
pdf.file <- "example.pdf"
rmarkdown::render(render.file , quiet = FALSE, output_format = "pdf_document",
output_file = pdf.file)
它的工作原理。
但如果我最後一行改爲:
rmarkdown::render(render.file , quiet = FALSE, output_format = "pdf_document",
output_file = "d:/help/me/please/example.pdf")
它不工作(所有路徑都存在)。我有錯誤
"! Undefined control sequence. \[email protected] ->d:\help \me\please\example _files/figure-... l.148 ...example_files/figure-latex/unnamed-chunk-2-1}"
pandoc.exe: Error producing PDF Show Traceback Rerun with Debug Error: pandoc document conversion failed with error 43 "
當我使用這個變體Linux服務器上它也可以
附:我想強調的是,問題可能不在路徑中(我使用標準過程file.path()來避免系統問題,僅在示例中使用示例中的路徑)。
在Windows中,路徑必須以另一種方式寫入,而不是Linux:'D:\ help \ me \ please \ example.pdf'。我認爲這是錯誤。 –
@J_F我不這麼認爲,順便說一句,我使用標準函數file.path()。在我的描述中,我只寫了這個「d:/help/me/please/example.pdf」爲例 – Stanislav