我试图用bookdown写一本小说:HTML,EPUB,以及PDF(pdfLaTeX)。我使用缩进模式,所以段落以缩进开头。我有以下自定义LaTeX命令,名为\scenebreak
,其中:
这是LaTeX:
% scene breaks
\renewcommand{\pfbreakdisplay}{%
\scriptsize\ding{86}}
\newcommand{\scenebreak}{\pfbreak*\noindent}
\newcommand{\forceindent}{\leavevmode{\indent}}
在LaTeX中引入场景时,我称之为
Text here
\scenebreak
New scene begins here.
在HTML中,我就是这样做的:
<div style='text-align:center;'>•</div>
我知道记事本中的block
就像是一个LaTeX环境。
是否可以使用命令/宏进行类似的设置?
答案 0 :(得分:3)
我真的不明白你的问题,但是如果你试图根据不同的输出格式写出不同的内容,那么你可以做到:
```{r echo=FALSE}
knitr::asis_output(if (knitr:::is_latex_output()) {
"\\scenebreak"
} else {
"<div style='text-align:center;'>•</div>"
})
```
如果您必须多次这样做,请创建一个函数并调用该函数,例如,在您的书的开头插入此代码块:
```{r, include=FALSE}
scenebreak = function() {
knitr::asis_output(if (knitr:::is_latex_output()) {
"\\scenebreak"
} else {
"<div style='text-align:center;'>•</div>"
})
}
```
然后使用需要中断的函数scenebreak()
:
```{r echo=FALSE}
scenebreak()
```