如何在RMarkdown中居中Word输出文档中的文本(含日期)
RMarkdown生成Word文档:日期居中问题解决方法
方法1:通过Word模板自定义样式(最适配)
这是最规范的方式,能让日期样式和模板统一:
- 打开你的
template.docx,创建一个新样式(比如命名为CenteredDate),设置文本居中对齐后保存模板。 - 在RMarkdown中用Pandoc的样式引用语法绑定该样式:
--- title: "Situation Report" subtitle: "Ebola outbreak in Sierra Leone" author: "Michael John P. Sabido" output: word_document: reference_docx: "template.docx" --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = FALSE, message = FALSE, warning = FALSE)
::: {.CenteredDate}
Date of report: r format(Sys.Date(), "%d %b %Y")
:::
## 方法2:使用Pandoc原生居中语法 如果不想修改模板,可直接用Pandoc支持的HTML居中标签(注意标签和文本间不要留空格): ```yaml --- title: "Situation Report" subtitle: "Ebola outbreak in Sierra Leone" author: "Michael John P. Sabido" output: word_document: reference_docx: "template.docx" --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = FALSE, message = FALSE, warning = FALSE)
方法3:无框表格强制居中
如果前两种方法无效,用1列无框表格实现居中效果:
--- title: "Situation Report" subtitle: "Ebola outbreak in Sierra Leone" author: "Michael John P. Sabido" output: word_document: reference_docx: "template.docx" --- ```{r setup, include=FALSE} knitr::opts_chunk$set(echo = FALSE, message = FALSE, warning = FALSE)
Date of report: r format(Sys.Date(), "%d %b %Y") |
|---|
生成Word后,可手动设置表格边框为无,或在模板中预设无框表格样式。 内容的提问来源于stack exchange,提问作者maikelsabido
相关产品推荐
相关产品推荐

