【发布时间】:2023-03-09 18:34:01
【问题描述】:
这可能吗?目前我必须渲染我的 .Rmd 文件两次,一次用于 html,一次用于 pdf 报告。他们每个人大约需要50分钟。因此,如果我可以使用渲染后创建的 html .md 文件,那将为我节省 50 分钟。
【问题讨论】:
标签: r r-markdown bookdown
这可能吗?目前我必须渲染我的 .Rmd 文件两次,一次用于 html,一次用于 pdf 报告。他们每个人大约需要50分钟。因此,如果我可以使用渲染后创建的 html .md 文件,那将为我节省 50 分钟。
【问题讨论】:
标签: r r-markdown bookdown
你可以用keep_md: yes保留knitr的markdown输出
---
output:
html_document:
keep_md: yes
---
然后,使用 pandoc,您可以从该文件生成您的 pdf;在终端(不是 R 控制台)中:
pandoc mydoc.md -o mydoc.pdf
如果你还没有安装 pandoc,你必须安装 pandoc,才能在没有 knitr 的情况下使用它。
不过,您可能会丢失一些东西,因为 knitr 会根据最终输出调整其 md 中间文件。
【讨论】:
如果您的.md 文档已经创建,您可以简单地使用:
library("rmarkdown")
render("mydoc.md", output_format = "pdf_document")
如果你总是需要同时生成html和pdf,那么使用J_F的方案同时渲染。
【讨论】:
可以渲染多个输出,但不能使用 RStudio 中的“编织”按钮。在 YAML 标头中写入所需的输出,然后使用 output_format = "all" 作为参数 in
rmarkdown::render(<your-rmd-file.rmd>, output_format ="all")
所以 YAML 标头看起来像:
title: "multiple outputs"
output:
pdf_document: default
html_document: default
或者您想为不同的输出格式设置的任何选项。
【讨论】:
或者,您可以告诉编译器保留中间 .md 文件。然后,您可以轻松地将其编译成其他格式。
转到:
1. RStudio > 打开你的 .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 下拉菜单中,选择 Preview PDF 并创建一个 .pdf 文件
作为步骤 2-5 的替代方法,编辑您的文件,使标题包含:
---
title: "blah blah"
output:
html_document:
keep_md: yes
---
【讨论】: