| generate_slides | R Documentation |
generate slides based on output
generate_slides(
outputs,
outfile = paste0(tempdir(), "/output.pptx"),
template = file.path(system.file(package = "autoslider.core"), "theme/basic.pptx"),
fig_width = 9,
fig_height = 5,
t_lpp = NULL,
t_cpp = 200,
l_lpp = 20,
l_cpp = 150,
fig_editable = FALSE,
font_size = NULL,
...
)
outputs |
List of output |
outfile |
Out file path |
template |
Template file path |
fig_width |
figure width in inch |
fig_height |
figure height in inch |
t_lpp |
An integer specifying the table lines per page |
t_cpp |
An integer specifying the table columns per page |
l_lpp |
An integer specifying the listing lines per page |
l_cpp |
An integer specifying the listing columns per page |
fig_editable |
whether we want the figure to be editable in pptx viewers, defaults to FALSE |
font_size |
Deck-wide default table font sizes, a named 'list' with any of 'body', 'header', 'footer' (point sizes). Per-slide sizes declared in the spec (a 'font_size:' block on the entry) override these. Applied by wrapping the slide's 'table_format' via [with_font_sizes()]. The footer defaults to the body size, or 8 pt when no body size is supplied; see Details. |
... |
arguments passed to program |
## Per-slide font size Each output carries its spec entry as an attribute (set by [generate_outputs()]). 'generate_slides()' reads two optional keys from it: 'table_format' (a formatter function) and 'font_size' (a named list with 'body'/'header'/'footer'). The effective formatter for a slide is 'with_font_sizes(table_format, body, header, footer)', so font sizes can be set per slide directly in the spec, e.g.
t_dm_slide_FAS:
program: t_dm_slide
suffix: FAS
table_format: black_format_tb
font_size:
body: 6
header: 6
footer: 5
The 'font_size' argument sets deck-wide defaults; per-slide values win. When no footer size is supplied, the resolved body size is used, falling back to 8 pt. This default is applied to the Confidential footnote on every supported slide path, including 'decor = FALSE'.
Pagination density is resolved the same way. A spec entry may carry an
optional lpp (lines per page) and cpp (columns per page). When
present they override the deck-wide t_lpp/t_cpp (tables) or
l_lpp/l_cpp (listings) for that slide only, so a short
demographics table and a long adverse-event table can use different
densities in the same deck:
t_dm_slide_FAS: program: t_dm_slide suffix: FAS lpp: 30 cpp: 180
Entries without these fields keep the deck-wide value. Each must be a single positive whole number; anything else is an error naming the offending entry.
Note that pagination for gtsummary tables is recomputed from the
slide height, so a spec lpp does not change their pagination.
No return value, called for side effects
# Example 1. When applying to the whole pipeline
library(dplyr)
data <- list(
adsl = eg_adsl |> dplyr::mutate(FASFL = SAFFL),
adae = eg_adae
)
filters::load_filters(
yaml_file = system.file("filters.yml", package = "autoslider.core"),
overwrite = TRUE
)
spec_file <- system.file("spec.yml", package = "autoslider.core")
spec_file |>
read_spec() |>
filter_spec(program %in% c("t_dm_slide")) |>
generate_outputs(datasets = data) |>
decorate_outputs() |>
generate_slides()
# Example 2. When applying to an rtable object or an rlisting object
adsl <- eg_adsl
t_dm_slide(adsl, "TRT01P", c("SEX", "AGE")) |>
generate_slides()
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.