rmarkdown:使用为.html创建的现有.md文件渲染到.pdf

时间:2017-03-14 16:54:11

标签: r r-markdown bookdown

这有可能吗?目前,我必须两次渲染我的.Rmd文件,一次用于html,一次用于pdf报告。每个都需要大约50分钟。因此,如果我可以使用渲染后创建的html .md文件,那将节省我50分钟。

4 个答案:

答案 0 :(得分:2)

您可以使用keep_md: yes

保持knitr的降价输出
---
output:
  html_document:
    keep_md: yes
---

然后,使用pandoc,您可以从此文件生成pdf;在终端(不是R控制台):

pandoc mydoc.md -o mydoc.pdf

如果您还没有安装pandoc,则必须安装pandoc,以便在没有编织器的情况下使用它。

你可能会遗漏一些东西,因为knitr会将其md中间文件调整为最终输出。

答案 1 :(得分:1)

可以渲染多个输出,但不能使用"编织" RStudio中的按钮。在YAML标题中写下您想要的输出,然后使用output_format =" all"作为

中的参数
rmarkdown::render(<your-rmd-file.rmd>, output_format ="all")

所以YAML标题如下:

title: "multiple outputs"
output:
     pdf_document: default
     html_document: default

或者您要为不同的输出格式设置的任何选项。

答案 2 :(得分:1)

如果您的.md文档已创建,则只需使用:

library("rmarkdown")
render("mydoc.md", output_format = "pdf_document")

如果你总是需要生成html和pdf,那么使用J_F的解决方案同时渲染两者。

答案 3 :(得分:0)

或者,您可以告诉编译器保留中间.md文件。然后,您可以轻松地将其编译为其他格式。

转到:
1. RStudio&gt;打开.Rmd文件
2.单击齿轮(设置)下拉菜单,然后选择Output Options
3.选择Advanced
4.检查Keep markdown source file
5.单击“确定” 6. Knit to HTML
7.在编辑器中打开.md文件 8.在Gear(设置)下拉列表中,选择PDF作为输出格式,然后选择(No Preview)
9.在预览下拉列表中,选择Preview PDF并创建.pdf文件

作为步骤2-5的替代方法,请编辑您的文件,使标题包含:

---
title: "blah blah"
output: 
  html_document: 
    keep_md: yes
---