R:如何更改 knitr word 中文本的字体和对齐方式

R: how to change font and alignment of text in knitr word

```{r results = 'asis'}
for(i in 1:10){
  cat(paste("This is iteration number" i))
}
```

在我输出生成的 .docx 文件后,文本默认左对齐,大小为 12 号 Cambria 字体。如何在我的 .Rmd 文件中将对齐方式更改为居中、更改字体大小和字体类型?

一种方法是在 YAML header 中使用 reference_docx 标签,如下所示:

---
title: "Untitled"
author: "Me X. Person"
date: "April 3, 2018"
output:
  word_document:
    reference_docx: word-style-02.docx
fontsize: 10pt
---

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

```{r results = 'asis'}
for(i in 1:10){
  cat(paste("This is iteration number", i, "<P><br>"))
}
```

接下来,在 Word 中准备一个文件,您所做的就是控制样式——我编织到 Word 并发现在这个例子中,代码由标题为 Compact 的样式。因此,我在 MS Word header 的功能区中单击了那个方块,并将其设置为 16 点 Courier New(居中)。我使用的 Word 文件在这里,所以你可以下载并 open/try 它:Drive link

它生成的输出在 Word 中如下所示:

如果这与您要找的内容相去甚远,请告诉我,我会删除它。希望它至少有点用处。

上述解决方案对我来说并不奏效,但我找到了一个可以修复的调整。

在 Microsoft Word 中,您要确保为每种样式修改 .docx 参考文档中的一段文本:

  • 第一段
  • 正文
  • 紧凑

从主页选项卡更改字体大小不会执行任何操作。您必须右键单击所选样式功能区 -> 修改并更改弹出窗口中的字体大小 window 该特定样式。

这是一个下载 link,当使用 cat() 函数将 .Rmd 中的文本打印为 word 输出时,它使样式更类似于 SAS 输出: https://drive.google.com/file/d/12VZUPXaAGMKPUAJsohZRYQrToFr6awzY/view?usp=sharing

请注意,我将文件称为 word-style.docx 而不是 word-style-02.docx