首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于HTML单文档的Bookdown下载

用于HTML单文档的Bookdown下载
EN

Stack Overflow用户
提问于 2021-06-11 01:02:33
回答 1查看 108关注 0票数 1

我有一本有多种输出格式的书。我希望用户能够下载多种格式的内容。这对PDF、EPUB等格式的应用来说是个奇迹。但它不适用于单个文件HTML bookdown::html_document2文档,因为它们呈现在当前的工作目录.中,而不是_book文件夹中。

例如,当我指定bookdown::git_book: ...时,它将在_book中创建。

当我使用bookdown::pdf_book: ...时,它也是在_book中创建的。

但是,当我使用bookdown::html_document2: ...时,它是在.中创建的。

为单页文档设置output_dir不起作用。

你知道怎么解决这个问题吗?

MWE

代码语言:javascript
复制
## _bookdown.yml
book_filename: "The-book"
delete_merged_file: yes

## _output.yml
bookdown::gitbook:
  split_by: rmd
  config:
    download:
      - ["The-book.pdf", "PDF"]
      - ["The-book.html", "HTML"]
bookdown::html_document2:
  toc: true
bookdown::pdf_book:
  keep_tex: no
  dev: "cairo_pdf"
  latex_engine: xelatex

然后在01-intro.Rmd

代码语言:javascript
复制
# Intro

This is a test
EN

回答 1

Stack Overflow用户

发布于 2021-08-16 09:33:11

我直接从一个R脚本编写一本书,这是我的工作:

代码语言:javascript
复制
bookdown::render_book(
  input         = "index.Rmd",
  output_format = "bookdown::html_document2",
  output_file   = "_book/The-book.html"),
  )

通过从R脚本创建图书,您可以开始使用图书的名称(如添加日期)和目录,请注意,如果目录不是_book,则需要在此之前创建它。使用pdf output,您可以使用output_dir为您创建目录,但它似乎不起作用,甚至与html_document2的output_file冲突。例如:

代码语言:javascript
复制
## PDF report
bookdown::render_book(
  input = "index.Rmd",
  output_format = "bookdown::pdf_document2",
  output_file = paste0("Proceedings-pdf-", format(Sys.time(), format = "%Y-%m-%d-%H%M%S"), ".pdf"),
  output_dir = "Proceedings"
)

## HTML
dir.create("Proceedings", showWarnings = F)
bookdown::render_book(
  input = "index.Rmd",
  output_format = "bookdown::html_document2",
  output_file = paste0("Proceedings/Proceedings-html-", format(Sys.time(), format = "%Y-%m-%d-%H%M%S"), ".html"),
  )
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67925585

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档