在R中使用texi2dvi生成pdf作为临时文件

时间:2012-02-09 11:54:34

标签: r

我需要从tex文件生成pdf,作为临时文件。但是我面临一个错误。我相信这是因为函数tools::texi2dvi只是对具有相同名称的系统命令的调用。由于Rtmp目录只允许R创建文件,我无法在那里创建pdf文件。

这就是我正在尝试的,以及我得到的错误:

> tf <- tempfile()
> brew("template.brew", tf)
> tools::texi2dvi(tf)

Error in tools::texi2dvi(tf) : 
    Running 'texi2dvi' on '/tmp/Rtmp9n4JFU/filea5811e6a32a' failed.
Messages:
    /usr/bin/texi2dvi: etex exited with bad status, quitting.

我相信一种解决方法是使用tempfile()创建一个新的临时文件,并要求tools::texi2dvi在其上写入输出。但是我不知道是否允许系统编辑文件。而且,我找不到设置tools::texi2dvi输出文件的方法。

有没有人知道解决方法?

谢谢!

1 个答案:

答案 0 :(得分:2)

TeX显然因缺少文件扩展而感到困惑。 以下应该有效。

tf <- tempfile(fileext=".tex")
cat(
  "\\documentclass{minimal}\\begin{document}test\\end{document}", 
  file=tf
)
tools::texi2dvi(tf)