You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在RMarkdown中居中Word输出文档中的文本(含日期)

RMarkdown生成Word文档:日期居中问题解决方法

方法1:通过Word模板自定义样式(最适配)

这是最规范的方式,能让日期样式和模板统一:

  1. 打开你的template.docx,创建一个新样式(比如命名为CenteredDate),设置文本居中对齐后保存模板。
  2. 在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)
Date of report: `r format(Sys.Date(), "%d %b %Y")`
```

方法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
相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 03:04:53