Compare commits
5 Commits
master
...
presentati
Author | SHA1 | Date | |
---|---|---|---|
eb1e57b548 | |||
386fb7dff6 | |||
5ba13f48b7 | |||
4da2ad6e6e | |||
6f0881d984 |
147
content/examples/tikz-graph.svg
Normal file
147
content/examples/tikz-graph.svg
Normal file
File diff suppressed because one or more lines are too long
After Width: | Height: | Size: 25 KiB |
BIN
content/images/covers/pts24-talk.jpg
Normal file
BIN
content/images/covers/pts24-talk.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 113 KiB |
120
content/tips/presenting.md
Normal file
120
content/tips/presenting.md
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
---
|
||||||
|
Title: Tools for making and giving presentations
|
||||||
|
Date: 2024-11-03
|
||||||
|
Author: Fabrice
|
||||||
|
Category: Tips
|
||||||
|
Tags: presentation, vim, latex
|
||||||
|
Slug: presenting
|
||||||
|
Header_Cover: ../images/covers/pts24-talk.jpg
|
||||||
|
Summary: Some of the tools I use for making and giving presentations.
|
||||||
|
Lang: en
|
||||||
|
---
|
||||||
|
|
||||||
|
# Introduction
|
||||||
|
|
||||||
|
Over the past year, I have to give quite a few presentations in different
|
||||||
|
contexts: internal to the company, for open-source conferences, for business
|
||||||
|
conferences…
|
||||||
|
|
||||||
|
I use this opportunity to refine a bit my presentation tools, and I just
|
||||||
|
summarize them here for curious people.
|
||||||
|
|
||||||
|
This page may be updated, for instance if I start using [typst] for slide
|
||||||
|
making. If you have subscribed to this blog’s [RSS feed], you will be notified
|
||||||
|
of future updates.
|
||||||
|
|
||||||
|
# Making Slides
|
||||||
|
|
||||||
|
For slide making, I prefer using tools that separate the content from the actual
|
||||||
|
design. I’m thus not using fancy WYSIWYG tools for that. If you are not
|
||||||
|
interested in that, you can already skip to the [presenting slides] section.
|
||||||
|
|
||||||
|
## LaTeX Beamer
|
||||||
|
|
||||||
|
As explained in the [typst article], I’m mostly using [LaTeX] to produce/typeset
|
||||||
|
documents, and presentations are not an exception. For this purpose I’m using
|
||||||
|
[beamer].
|
||||||
|
|
||||||
|
For this purpose, my [vim setup for LaTeX] proved to be pretty useful,
|
||||||
|
especially with the “on save compilation”. However, the backward search is not
|
||||||
|
very accurate with beamer slides.
|
||||||
|
|
||||||
|
### Overlays and Graphics
|
||||||
|
|
||||||
|
The main advantage, besides my familiarity with [LaTeX], lays in the [overlay]
|
||||||
|
system in beamer, that is quite powerful and provides a very precise way to
|
||||||
|
display elements, especially with [TikZ] to design animated graphics.
|
||||||
|
|
||||||
|
For instance in the example below, I can show the top part of the graph
|
||||||
|
initially, then the bottom, and change the name of the last node for the second
|
||||||
|
slide. That can be easily adjusted to have more steps in the process.
|
||||||
|
|
||||||
|
```latex
|
||||||
|
…
|
||||||
|
\usetikzlibrary{positioning}
|
||||||
|
…
|
||||||
|
\begin{tikzpicture}
|
||||||
|
\tikzstyle{node} = [draw, rectangle, fill=blue!40, minimum height=2em]
|
||||||
|
\tikzstyle{arrow} = [->, >=stealth, very thick]
|
||||||
|
\node[node] (start) {Data};
|
||||||
|
\node[node, right=1cm of start] (a1) {Enc($\cdot$)};
|
||||||
|
\node<2->[node, below=5mm of a1] (a2) {Sig($\cdot$)};
|
||||||
|
\node<1>[node, right=1cm of a1] (stop) {Encrypted Data};
|
||||||
|
\node<2->[node, right=1cm of a1] (stop) {Encrypted and Signed Data};
|
||||||
|
|
||||||
|
\draw[arrow] (start) -- (a1);
|
||||||
|
\draw<2->[arrow] (start) -- (a2);
|
||||||
|
\draw[arrow] (a1) -- (stop);
|
||||||
|
\draw<2->[arrow] (a2) -- (stop);
|
||||||
|
\end{tikzpicture}
|
||||||
|
```
|
||||||
|
|
||||||
|
Resulting in:
|
||||||
|
|
||||||
|
![The last image from the above code](../examples/tikz-graph.svg "The last image from the above code"){width=66%}
|
||||||
|
|
||||||
|
Moreover, you have access to the whole latex ecosystem, especially those for
|
||||||
|
neat illustrations such as [tikzpingus].
|
||||||
|
|
||||||
|
### Customisation
|
||||||
|
|
||||||
|
It is also quite easy to customise slides with beamer. For instance, with
|
||||||
|
[metropolis], from its
|
||||||
|
[documentation](https://ctan.tetaneutral.net/macros/latex/contrib/beamer-contrib/themes/metropolis/doc/metropolistheme.pdf),
|
||||||
|
section 8 describe where to find specific colours. As for the fonts, if you are
|
||||||
|
using xelatex/lualatex, a simple `\setmainfont` suffices to redefine it.
|
||||||
|
|
||||||
|
For instance, if I want to have the alert text in orange:
|
||||||
|
|
||||||
|
```latex
|
||||||
|
\setbeamercolor[alerted text]{fg=orange}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Drawbacks
|
||||||
|
|
||||||
|
However, LaTeX starts to slow down quickly, especially with a lot of [TikZ]
|
||||||
|
drawings… On documents, it’s not really an issue as it is possible to cache the
|
||||||
|
drawings with the `externalize` tikz library. However, when mixing overlays and
|
||||||
|
TikZ, it starts to [need some
|
||||||
|
tweaks](https://tex.stackexchange.com/questions/78955/use-tikz-external-feature-with-beamer-only).
|
||||||
|
I never included them in my workflow as they make TikZ drawings more complicated
|
||||||
|
than they are.
|
||||||
|
|
||||||
|
## reveal.js
|
||||||
|
|
||||||
|
# Presenting Slides {#presenting-slides}
|
||||||
|
|
||||||
|
## wl-mirror
|
||||||
|
|
||||||
|
## pdfpc
|
||||||
|
|
||||||
|
[RSS feed]: /feeds/all.rss.xml
|
||||||
|
[typst]: https://typst.app/
|
||||||
|
[typst article]: {filename}../software/typst.md
|
||||||
|
[presenting slides]: #presenting-slides
|
||||||
|
[LaTeX]: https://www.latex-project.org/
|
||||||
|
[beamer]: https://ctan.org/pkg/beamer
|
||||||
|
[vim setup for LaTeX]: {filename}../software/nvim-latex.md
|
||||||
|
[overlay]: https://www.overleaf.com/learn/latex/Beamer_Presentations%3A_A_Tutorial_for_Beginners_(Part_4)%E2%80%94Overlay_Specifications
|
||||||
|
[TikZ]: https://www.ctan.org/pkg/pgf
|
||||||
|
[tikzpingus]: https://github.com/EagleoutIce/tikzpingus
|
Loading…
Reference in New Issue
Block a user