4

我想缩进一个用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 厘米的预定义样式,但对于似乎不可能的表格。或者是吗?

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

4

1 回答 1

0

从包文档中,除非您想编写补丁,否则您最好使用隐形列:

函数 addFlexTable

将 FlexTable 添加到文档对象。

Word 和 html 文档

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

预期的论点是:

  • 文档对象
  • FlexTable 对象
  • 最终是一个 parProperties 对象来定义对齐。请注意,对于 docx 对象,将仅使用对齐方式,如果您想在表格周围添加空间,请在前面和或后面的段落中指定填充。
于 2016-10-25T20:16:13.857 回答