我想包括基于正在创建的格式的具体内容。在这个特定的示例中,我的表在MS word
输出中看起来很糟糕,但在HTML
输出中却很棒。我想添加一些测试,以省略表格,这取决于输出。
下面是一些伪代码:
output.format <- opts_chunk$get("output")
if(output.format != "MS word"){
print(table1)
}
我确信这不是使用opts_chunk
的正确方式,但这是我对knitr
如何在幕后工作的理解的极限。什么才是正确的测试方法呢?
发布于 2018-01-26 16:53:59
从knitr
1.18开始,您可以使用这两个函数
knitr::is_html_output()
和
knitr::is_latex_output()
发布于 2017-03-18 00:30:06
另外一点:上面的答案不适用于html_notebook
,因为代码是直接在那里执行的,而knitr::current_input()
没有响应。如果知道文档名称,可以像上面那样调用all_output_formats
,显式地指定名称。我不知道还有没有别的办法。
发布于 2021-06-21 06:39:49
这就是我使用的
library(stringr)
first_output_format <-
names(rmarkdown::metadata[["output"]])[1]
if (!is.null(first_output_format)) {
my_output <- str_split(first_output_format,"_")[[1]][1]
} else {
my_output = "unknown"
}
https://stackoverflow.com/questions/35144130
复制相似问题