军官占位符文本未保存到输出文件
officer placeholder text is not saved to output file
我正在尝试使用 OfficeR 生成一些 powerpoint 报告,但无法将结果保存到文件中。
我能够处理数据并填充占位符。当我使用 slide_summary()
时显示用于占位符的内容,但在输出文件中不可见。
我的代码如下所示:
# read template
pptx <- read_pptx("sample_pptx.pptx")
# open slide 5
slide <- on_slide(pptx, 5)
# add text to pre-existing placeholder
ph_add_text(slide, str = "sample_text", ph_label = "sample_ph")
# check content of slide
slide_summary(slide)
# save presentation
print(pptx, target = "outfile.pptx")
输出:
> slide_summary(slide)
type id ph_label offx offy cx cy text
1 body 2 sample_ph NA NA NA NA sample_text
> print(pptx, target = "outfile.pptx")
[1] "C:/Users/mhuber/OfficeR/outfile.pptx"
无论我做什么,文本都不会出现在我的输出文件中。
在 David 解决这个问题之前,以下解决方法运行良好并且似乎不会对性能产生太大影响(显然不是访问现有幻灯片,而是需要从现有布局创建新幻灯片,其中占位符需要存在):
# read template
pptx <- read_pptx("sample_pptx.pptx")
# create new slide
pptx <- add_slide(pptx, layout="sample_layout", master="sample_master")
# add text to pre-existing placeholder
ph_with(pptx, value = "sample_text", location = ph_location_label(ph_label = "sample_ph"))
# move slide from end to desired position ( in this case 5)
move_slide(pptx, index=length(pptx), to=5)
# save presentation
print(pptx, target = "outfile.pptx")
如果您没有适合您需要的现有布局,这将变得更加棘手,但这对我的情况有效,希望对其他人也适用。
我正在尝试使用 OfficeR 生成一些 powerpoint 报告,但无法将结果保存到文件中。
我能够处理数据并填充占位符。当我使用 slide_summary()
时显示用于占位符的内容,但在输出文件中不可见。
我的代码如下所示:
# read template
pptx <- read_pptx("sample_pptx.pptx")
# open slide 5
slide <- on_slide(pptx, 5)
# add text to pre-existing placeholder
ph_add_text(slide, str = "sample_text", ph_label = "sample_ph")
# check content of slide
slide_summary(slide)
# save presentation
print(pptx, target = "outfile.pptx")
输出:
> slide_summary(slide)
type id ph_label offx offy cx cy text
1 body 2 sample_ph NA NA NA NA sample_text
> print(pptx, target = "outfile.pptx")
[1] "C:/Users/mhuber/OfficeR/outfile.pptx"
无论我做什么,文本都不会出现在我的输出文件中。
在 David 解决这个问题之前,以下解决方法运行良好并且似乎不会对性能产生太大影响(显然不是访问现有幻灯片,而是需要从现有布局创建新幻灯片,其中占位符需要存在):
# read template
pptx <- read_pptx("sample_pptx.pptx")
# create new slide
pptx <- add_slide(pptx, layout="sample_layout", master="sample_master")
# add text to pre-existing placeholder
ph_with(pptx, value = "sample_text", location = ph_location_label(ph_label = "sample_ph"))
# move slide from end to desired position ( in this case 5)
move_slide(pptx, index=length(pptx), to=5)
# save presentation
print(pptx, target = "outfile.pptx")
如果您没有适合您需要的现有布局,这将变得更加棘手,但这对我的情况有效,希望对其他人也适用。