如何在渲染时自定义r Quarto pdf文档的文件名?以前,当我使用Rmarkdown时,我在YAML中使用了以下代码:

---
title: "Some title"
author: "First Last"
date: "`r format(Sys.Date(), '%d %B, %Y')`"
output: pdf_document
knit: (function(inputFile, encoding) { rmarkdown::render(inputFile, encoding = encoding, output_file = file.path(dirname(inputFile), paste0(Sys.Date(),"_Report","_FirstLast",".pdf"))) })
---

当我点击"编织"按钮时,pdf文档的文件名将是2022-08-08_Report_FirstLast.pdf

有没有办法用Quarto pdf来做到这一点?我认为需要使用quarto_render功能,但不知道如何使用.

推荐答案

使用quarto_render函数的output_file参数.

file_name = paste0(Sys.Date(),"_Report","_FirstLast", ".pdf")

quarto_render("your_qmd_file.qmd", output_file = file_name, output_format = "pdf")

现在,关于您正在try 的方法,

  • 首先,没有这样的knitYAML密钥 在四声部AFAIK中

  • 其次,尽管r-code可以用于前缀为BE !expr 的代码块选项中,但是在回答这个问题(03 Sep, 2022)的时候,不可能在文档YAML部分使用内联R代码.See this discussion%押注Github

虽然在Github上的this discussion中使用YAML中的r-code有一些建议的解决方法,但在您的情况下,使用quarto_render来控制输出文件名似乎是最简单的 Select .


此外,如果您的输出文件名很简单(即没有任何r-code语法),则可以使用output-fileYAML选项.

---
title: "Testing Output file name"
format:
   pdf: 
    output-file: "output_file_name"
    output-ext:  "pdf"
---


## Quarto

Quarto enables you to weave together content 
and executable code into a finished document.
To learn more about Quarto 
see <https://quarto.org>.

## Running Code

When you click the **Render** button 
a document will be generated that 
includes both content and the output of 
embedded code. 

这将在源文件所在的目录中创建名为output_file_name.pdf的输出文件.

R相关问答推荐

在R中,如何在使用tibble::enFrame % % unlist转换后从收件箱中重组嵌套列表?

是否有R函数来判断一个组中的所有值是否与另一个组中的所有值相同?

是否有任何解决方案可以优化VSCode中RScript的图形绘制?

跨列应用多个摘要函数:summerise_all:列表对象无法强制为double类型'

根据模式将一列拆分为多列,并在R中进行拆分

用相同方法得到不同函数的ROC最优截断值

如何直接从Fortran到R的数组大小?

未识别时区

对于变量的每个值,仅 Select 包含列表中所有值的值.R

如何删除最后一个可操作对象

从服务器在Shiny中一起渲染图标和文本

条形图顶部与其错误条形图不对齐

从非重叠(非滚动)周期中的最新数据向后开窗并在周期内计数

如何将Which()函数用于管道%>;%

正在导出默认的RStudio主题,还是设置括号 colored颜色 ?

手动指定从相同数据创建的叠加图的 colored颜色

有没有办法定制Plot(allEffects())面板标题?

在散点图中使用geom_point放置线图例

我需要使用ggplot2制作堆叠条形图

填充图例什么时候会有点?