缩进使用R-ReporteRs制作的Flextable

时间:2016-10-23 08:59:24

标签: r indentation flextable reporters

我想缩进使用ReporterRs包创建的(flex)表。这是一个例子:

library(ReporteRs)

df <- data.frame(Column1 = 1:5, Column2 = c("a","b","c","d","e"))
Mydoc = docx(title="A testdoc for testing tables")
options('ReporteRs-fontsize'=10, 'ReporteRs-default-font'='Arial')
FTab = FlexTable( data = df, add.rownames = FALSE, header.columns = TRUE,  
                  body.text.props = textProperties( font.size = 10,font.family = "Arial" ),
                  header.text.props = textProperties( font.size = 10,font.family = "Arial", font.weight = "bold"))
FTab = setFlexTableBorders(FTab,inner.vertical = borderNone(),inner.horizontal = borderNone(),
                           outer.vertical = borderNone(), 
                           outer.horizontal = borderProperties(color = "black", style = "solid", width = 1))
Mydoc = addFlexTable(Mydoc, FTab)

nu <- format(Sys.time(), "%Y%m%d%H%M")
writeDoc(Mydoc, paste0("testreport_",nu,".docx"))

这将创建一个带有左对齐表的docx。我希望桌子向右移动1.5厘米。因此没有中心或右对齐,但1.5厘米的压痕。这可能吗?对于文本,我可以使用缩进1.5厘米的预定义样式,但对于看起来不可能的表格。或者是吗?

作为一种解决方法,我可以在左侧添加一个额外的列,没有任何边框或文本。但我更喜欢一个简洁的解决方案。

1 个答案:

答案 0 :(得分:0)

从软件包文档中,除非您想编写补丁,否则您最好选择隐藏列:

函数addFlexTable

将FlexTable添加到文档对象。

Word和html文档

使用addFlexTable函数在文档对象中添加FlexTable对象。

预期的论点是:

  • 文档对象
  • FlexTable对象
  • 最终使用parProperties对象来定义对齐。 请注意,使用docx对象时,只会使用对齐,如果您想在表格周围添加空格,请在前段和后段指定填充。