2017-07-17 138 views
0

我有一個RMarkdown文件,我想要發佈爲HTML和PDF。我在文件中使用分頁符命令\newpage在PDF輸出中插入分頁符。但是,在HTML輸出中,\newpage顯示爲內容的一部分。Knitr,RMarkdown:如何在HTML輸出中省略Latex分頁符

如何讓knitr/pandoc從HTML輸出中省略\newpage

我試圖在HTML註釋中嵌入\newpage,但它在PDF輸出中沒有任何效果。

這是Rmd文件。

--- 
title: 'RMarkdown Test' 
author: "Carl Parker" 
date: "July 16, 2017" 
output: 
    pdf_document: default 
    html_document: 
    keep_md: yes 
--- 


# Page 1 # 

\newpage 

# Page 2 # 


**--- END ---** 

這是構建/渲染的代碼。

library("rmarkdown") 
library("knitr") 

render("test-1.rmd", output_format = "all") 


# --- END --- 

回答

1

如果您希望只對pdf執行代碼而不執行html,則可以按如下方式使用函數knitr::pandoc_to()。您也可以使用它來爲html或pdf編寫一些文本:
請注意\,在R代碼中調用pastecat時需要加倍\\

--- 
title: "RMarkdown Test" 
author: "Carl Parker" 
date: "July 16, 2017" 
output: 
    html_document: 
    keep_md: yes 
    pdf_document: default 
--- 

```{r setup, include=FALSE} 
knitr::opts_chunk$set(echo = TRUE) 
``` 


# Page 1 # 
<!-- use newpage for latex only --> 
`r if(knitr:::pandoc_to() == "latex") {paste("\\newpage")}` 

<!-- Specific text for html or pdf --> 
`r ifelse(knitr:::pandoc_to() == "html", "Text in html output only", "Text in pdf output only")` 

# Page 2 # 


**--- END ---**