代码之家  ›  专栏  ›  技术社区  ›  J.Sabree

如何在柔性表格标题中有多个字体大小?

  •  0
  • J.Sabree  · 技术社区  · 5 年前

    我有一个flextable(),我想让标题有两种字体大小。一个大小用于正文(例如,20磅字体),较小的大小用于插入文本(12磅字体)。下面的代码使整个标头为20磅。

    注意:在最终的解决方案中,我不希望将插入文本变成一个全新的行,除非它可以像下面的例子所示的那样接近原始文本。

    library(flextable)
    library(dplyr)
    
    set_flextable_defaults(font.size = 20) #Works but makes all header size 20
    
    flextable(test) %>%
      set_header_labels(values = list(name = "Name", med_score = "Score (Median)", mean_score = "Score (Mean)")) %>%
      align(align = "center", part = "header")
    

    编辑:已添加图片

    以下是目前的情况:

    enter image description here

    下面是我想要的样子:

    enter image description here

    注意:我在PowerPoint中制作了这个目标表。它在很多方面看起来与原始版本不同,因为我没有格式化原始版本。我试图复制的唯一区别是(中位数)和(平均值)小于Score,并且它们在同一个标题单元格中。

    0 回复  |  直到 5 年前
        1
  •  11
  •   Jav    5 年前

    你可以使用 compose , as_paragraph as_chunk 实现它。

    供参考: https://ardata-fr.github.io/flextable-book/cell-content-1.html#multi-content

    library(flextable)
    
    ft <- flextable(airquality[ sample.int(10),])
    
    compose(
      ft,
      j = "Ozone",
      part = "header",
      value = as_paragraph(
        "Ozone ",
        as_chunk(
          " (Median)",
          props = fp_text_default(color = "#006699", font.size = 5)
        )
      )
    )
    

    enter image description here