我想将flextable对象另存为图像。我可以在查看器中看到带有标题的表格。但是,当我将此保存为图像时,标题不再出现。这是今天才改变的,以前不是问题。我试图更改表格和标题的字体,并更新了我的flextable包版本。使用最新版本flextable_0.9.1
。
我遇到的另一个问题是如何改变标题和表格的字体
> gdtools::installed_gfonts()
[1] "Poppins" "Noto Sans"
这就是我正在做的:
i1= flextable(head(iris))%>%
set_caption( "My table")
save_as_image(i1, "Outputs/i1.png")
这是保存的图像文件:
#And trying to change font of caption:
i2= flextable(head(iris))%>%
set_caption(as_paragraph( "My table"))
font(i2, fontname = "Noto Sans", part = "all")
or
i3= flextable(head(iris))%>%
set_caption(as_paragraph(as_chunk( "My table")))
font(i3, fontname = "Noto Sans", part = "all")
标题字体不变
1条答案
按热度按时间w1jd8yoj1#
您在查看器中看到的版本是由以下人员隐式创建的:
而从
save_as_image
获得的版本,从0.9.1开始,是:前者在内部调用
htmltools_value()
,包含处理flextable标题的代码。后者的等价物(gen_grob
)则没有。这就是为什么您在查看器中看到的和保存的图像之间的结果不同。至于为什么这个变化最近才出现,我猜你原来的flextable版本是从一段时间以前开始的,当时
save_as_image
函数的早期版本通过对flextable的HTML输出进行截图来工作,并得到了webshot /webshot 2包的支持(这是一个link到2023年1月的代码库快照,其中描述了这个函数)。包创建者在他的GH repo上最近的issue中提到了这一点:
是的,有很多关于
webshot
和webshot2
的投诉,所以我们决定停止使用它。现在
save_as_image()
只使用ragg
并生成png,我们对这个版本很满意。我想最终,不同的输出选项在表格标题方面有不同的约定,每个人都希望在Word文档,PowerPoint甲板,PDF文件,HTML页面等中具有完全相同的外观,这似乎并不自然。因此,
save_as_image
可能故意看起来与html输出版本不同。我没资格说。在问题的第二部分,如果你想改变标题的外观(在html输出中),你可以在
as_chunk
中指定它,例如: