如何在flextable表题中使用Markdown实现粗体、斜体格式化效果
flextable表题局部设置粗体/斜体的解决方法
以下是两种可实现需求的方案:
方案1:使用flextable原生函数精准控制格式
直接用as_paragraph()拼接不同格式的文本片段,兼容性最强,支持HTML、Word等所有输出场景:
library(flextable) library(dplyr) iris[1:10,] %>% flextable() %>% set_caption( caption = as_paragraph( as_b("Tab. 1:"), # 加粗内容 " First ten (", as_i("n"), # 斜体内容 " = 10) samples of the Iris species dataset" ) )
as_b()用于设置指定文本为粗体as_i()用于设置指定文本为斜体- 你可以按需拼接任意数量、任意格式的文本片段,实现复杂的表题格式
方案2:直接解析Markdown格式的表题
如果你已经习惯用Markdown语法写表题,可以借助ftExtra包的parse_md()函数自动解析格式标记,不需要手动拆分文本:
library(flextable) library(dplyr) library(ftExtra) # 按你原本的写法编写带Markdown格式的表题 caption_content <- "**Tab. 1:** First ten (*n* = 10) samples of the Iris species dataset" iris[1:10,] %>% flextable() %>% set_caption(caption = parse_md(caption_content))
内容的提问来源于stack exchange,提问作者Jens
相关产品推荐
相关产品推荐

