如何在 Officer R 中为 fpar 添加边框

How to add a border to fpar in Officer R

我正在尝试使用 Officer 包来创建 docx。我想创建具有不同级别和文本样式的段落,同时让每个段落都有自己的边框。我曾尝试将 fp_parblock_list 命令和 fpar 命令一起使用,但没有成功。有任何想法吗?这是我一直在尝试的:

library(officer)
library(dplyr)

reg24 <- fp_text(color = "black", font.size = 24)
bold <- fp_text(color = "black", font.size = 24, bold = TRUE)
underline <- fp_text(color = "black", font.size = 24, underlined = TRUE)
bigbold <- fp_text(color = "black", font.size = 28, bold = TRUE)
border <- fp_par(
  text.align = "left",
  padding = 0,
  border = fp_border(color = "black", style = "solid", width = 1))

summary <- block_list(
fpar(ftext("9", bigbold),
         ftext("Address", bold))%>%
    fpar(ftext("Status:", underline),
         ftext("Under Construction", reg24))%>%
    fpar(ftext("Expected Completion:", underline),
         ftext("2020", reg24))%>%
    fpar(ftext("Investment:", underline),
         ftext(",000,000")))

我不确定从这里该何去何从,因为似乎没有办法让一个段落具有不同的级别、不同的文本样式、边界。有什么建议吗?

你可以使用这个例子:

library(officer)
library(dplyr)

img.file <- file.path( R.home("doc"), "html", "logo.jpg" )
fpt_blue_bold <- fp_text(color = "#006699", bold = TRUE)
fpt_red_italic <- fp_text(color = "#C32900", italic = TRUE)

border <- fp_par(
  text.align = "left",
  padding = 0,
  border.bottom = fp_border(color = "red", style = "solid", width = 1))

value <- block_list(
  fpar(ftext("hello world", fpt_blue_bold), fp_p = border),
  fpar(ftext("hello", fpt_blue_bold), " ", ftext("world", fpt_red_italic))
)


read_docx() %>% 
  body_add_blocks(value) %>% 
  print(target = "coco.docx")