officer (version 0.3.6)

ph_add_text: append text

Description

append text in a placeholder. The function let you add text to an existing content in an exiisting shape, existing text will be preserved.

Usage

ph_add_text(x, str, type = "body", id = 1, id_chr = NULL,
  ph_label = NULL, style = fp_text(font.size = 0), pos = "after",
  href = NULL, slide_index = NULL)

Arguments

x

an rpptx object

str

text to add

type

placeholder type

id

placeholder index (integer) for a duplicated type. This is to be used when a placeholder type is not unique in the layout of the current slide, e.g. two placeholders with type 'body'. To add onto the first, use id = 1 and id = 2 for the second one. Values can be read from slide_summary.

id_chr

deprecated.

ph_label

label associated to the placeholder. Use column ph_label of result returned by slide_summary.

style

text style, a fp_text object

pos

where to add the new element relative to the cursor, "after" or "before".

href

hyperlink to reach when clicking the text

slide_index

slide index to reach when clicking the text. It will be ignored if href is not NULL.

Usage

If your goal is to add formatted text in a new shape, use ph_with with a block_list instead of this function.

Examples

Run this code
# NOT RUN {
fileout <- tempfile(fileext = ".pptx")
my_pres <- read_pptx()
my_pres <- add_slide(my_pres)
my_pres <- ph_empty(my_pres,
  location = ph_location_type(type = "body"))

small_red <- fp_text(color = "red", font.size = 14)

my_pres <- ph_add_par(my_pres, level = 3)
my_pres <- ph_add_text(my_pres, str = "A small red text.",
  style = small_red)
my_pres <- ph_add_par(my_pres, level = 2)
my_pres <- ph_add_text(my_pres, str = "Level 2")

print(my_pres, target = fileout)

# another example ----
fileout <- tempfile(fileext = ".pptx")

doc <- read_pptx()
doc <- add_slide(doc)
doc <- ph_with(doc, "Un titre 2",
  location = ph_location_type(type = "title"))
doc <- ph_empty(doc,
  location = ph_location(rotation = 90, bg = "red",
      newlabel = "myph"))
doc <- ph_add_par(doc, ph_label = "myph", level = 2)
doc <- ph_add_text(doc, str = "Jump here to slide 2!",
  ph_label = "myph")

print(doc, target = fileout)
# }

Run the code above in your browser using DataCamp Workspace