creating slides
and more
Emil Hvitfeldt
Quarto For Python Devs Workshop
posit::conf 2023
using .columns
and .column
classes
output-location: column
nice short hand
index.qmd
---
title: "Tricky Revealjs"
format: revealjs
---
## Columns
::: columns
::: {.column width="50%"}
Columns
Columns
:::
::: {.column width="50%"}
Columns
Columns
:::
:::
## Absolute positioning
![](images/oreo.png){.absolute top=200 left=0 width="350" height="300"}
![](images/presto.png){.absolute top=50 right=50 width="250" height="450"}
![](images/wiggles.png){.absolute bottom=0 right="30%" width="300" height="300"}
## Centering {.center}
Is normally super hard
## {.center}
[big text]{.r-fit-text}
style.scss
/*-- scss:defaults --*/
@import url(‘https://fonts.googleapis.com/css2?family=Crimson+Text:ital@0;1&family=Sail&display=swap’);
$font-family-sans-serif: “Crimson Text”;
$presentation-font-size-root: 46px;
$link-color: #440033;
$bg-color: #B7D9F6;
/*-- scss:rules --*/
styles.scss
$theme-purple: #BF65C5;
$theme-blue: #76AADB;
$theme-teal: #50847B;
$theme-cream: #F5F5F5;
$theme-dark-purple: #1A1626;
$theme-yellow: #FFD571;
$theme-brown: #a37100;
$theme-pink: #FED7E1;
$body-bg: white;
$body-color: black;
$link-color: $theme-purple;
$selection-bg: $theme-pink;
.blue {
color: $theme-blue;
}
.teal {
color: $theme-teal;
}
style.scss
$theme-blue: #394D85;
@mixin background-full {
background-size: cover;
background-position: center;
background-repeat: no-repeat;
}
.theme-slide2 {
&:is(.slide-background) {
background-image: url(‘../../../../../assets/slide2.svg’);
@include background-full;
}
h3 {
color: $theme-blue;
}
h2, h3, h4, h5, p, pre {
margin-left: 100px;
}
}
styles.scss
.reveal .slides section .fragment.highlight-orange {
opacity: 1;
visibility: inherit
}
.reveal .slides section .fragment.highlight-orange.visible {
background-color: $theme-orange;
}
Reveal.on( 'slidechanged', event => {
// event.previousSlide, event.currentSlide
} );
Reveal.on( 'resize', event => {
// event.scale, event.oldScale, event.size
} );
Reveal.on( 'fragmentshown', event => {
if (event.fragment.classList.contains("advance-slide")) {
Reveal
.getCurrentSlide().querySelector("iframe")
.contentWindow.Reveal.right()
}
} );
Reveal.on( 'fragmenthidden', event => {
if (event.fragment.classList.contains("advance-slide")) {
Reveal
.getCurrentSlide().querySelector("iframe")
.contentWindow.Reveal.left()
}
} );