rstudiomarkdownr-markdownpresentation

Equivalent of "highly dynamic" appearance in markdown presentations


I am considering making my presentations using markdown in RStudio rather than beamer. In beamer I often use incremental appearance of the content, with the option "highly dynamic", which makes the next item to appear show in light gray before appearing fully. Apart from looking nice, this helps me present as it prevents me from being surprised if I forget the next point on the slide.

My question is: Is there any way to achieve a similar effect if I make my slides in RStudio, for instance as an R presentation, or rmarkdown presentation using ioslides, or Slidy?

I am aware that I can set incremental: true in R presentations, but this only gives incremental appearance, not the "highly dynamic" effect.


Solution

  • There are several different ways to produce slides in RMarkdown: ioslides, slidy, revealjs, xaringan, etc. I tend to use ioslides, and this method works there. I have added a couple of other variations below.

    What you need to do is to change the CSS for the selector .build .to-build so that instead of making items transparent, it only makes them partially transparent. You can do this by creating a file containing this:

    .build .to-build {
      opacity: 0.1
    }
    

    If you call that file incremental.css, then in your YAML for the presentation, you have this:

    output: 
      ioslides_presentation:
        incremental: true
        css: incremental.css
    

    Then you will see something like this when you display the sample presentation after showing the first bullet:

    screenshot

    Edited to add:

    Here's the CSS to use if you're using slidy_presentation instead of ioslides_presentation:

    body.single_slide .invisible {
      opacity: 0.1;
      visibility: visible;
    }
    

    And here's what to use for revealjs::revealjs_presentation:

    .reveal .slides section .fragment {
      opacity: 0.1;
      visibility: visible;
    }
    

    You can probably put all three recipes into the incremental.css file, and then switch between the formats until you find which one you like best.