You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将R语言中的flextable类对象ftmax与ftmin保存为PDF文件(不使用RMarkdown)

不用RMarkdown,把flextable保存成PDF的方法

嘿,我来帮你搞定这个问题!不用RMarkdown的话,有两种实用的方式可以把你的ftmax和ftmin导出成PDF——既可以单独存每个表格,也能把俩表格放进同一个PDF文档里。

方法1:直接用flextable自带工具存单个表格

flextable本身就有个save_as_pdf函数,能直接把单个表格导出成PDF。不过这个功能依赖webshot2包(用来渲染表格样式),所以先得把它装上:

# 先装需要的包(没装过的话)
install.packages(c("flextable", "webshot2"))

# 加载包
library(flextable)
library(webshot2)

# 分别保存两个表格为独立PDF
save_as_pdf(ftmax, path = "最大偏差表格.pdf")
save_as_pdf(ftmin, path = "最小偏差表格.pdf")

执行完这两行,你就能得到两个单独的PDF文件,每个对应一个表格。

方法2:把两个表格合并到同一个PDF里

要是你希望俩表格在同一个PDF里(比如方便查看),可以用officer包先做个Word文档,把表格插进去,再转成PDF。这个方法需要你的系统能处理Word文档(比如装了Microsoft Word或者LibreOffice),或者用doconv包来完成格式转换:

第一步:装包并加载

install.packages(c("flextable", "officer", "doconv"))
library(flextable)
library(officer)
library(doconv)

第二步:制作包含双表格的Word文档

# 创建一个空的Word文档对象
doc <- read_docx()

# 插入第一个表格,加个空行分隔,再插分页符(可选,让俩表格各占一页)
doc <- body_add_flextable(doc, ftmax)
doc <- body_add_par(doc, "")
doc <- body_add_break(doc)

# 插入第二个表格
doc <- body_add_flextable(doc, ftmin)

# 保存成临时Word文件
print(doc, target = "偏差表格合集.docx")

第三步:把Word转成PDF

# 一键转PDF
docx_to_pdf("偏差表格合集.docx", target = "偏差表格合集.pdf")

这样你就有一个包含两个表格的PDF文件啦。

小提示

  • 用save_as_pdf如果遇到渲染失败,检查下webshot2是不是装对了,它需要调用无头浏览器来渲染表格样式,要是有问题可以试试重装这个包。
  • 用officer转PDF失败的话,看看你的系统有没有能打开Word的软件,或者确认doconv的依赖配置没问题。

内容的提问来源于stack exchange,提问作者basrobot

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.27 20:32:44