Le thème Celestia

Version 2.3.0 • Auteur : Razik Ikhlef

Fichiers

Page de titre
Page de titre
Page de section avec le plan
Page de section avec le plan
Théorème, démonstration, exemple
Théorème, démonstration, exemple
Code source
Code source
Chiffres clés
Chiffres clés
Palette sombre
Palette sombre

Le thème Celestia est un thème Beamer moderne et élégant, conçu pour créer des présentations professionnelles et esthétiques. Il offre une grande flexibilité de personnalisation tout en restant simple d'utilisation.

Ses réglages se donnent au chargement du thème ; la plupart se changent aussi en cours de document, pour une seule diapositive ou pour toute une partie.

Introduction

Utilisation de base

\documentclass{beamer}
\usetheme{Celestia}

\title{Ma présentation}
\author{Mon nom}
\date{\today}

\begin{document}
\maketitle
\end{document}

Compilation

Le thème Celestia est conçu pour être compilé avec lualatex ou xelatex afin de bénéficier de la gestion complète des polices via fontspec. Un mode de compatibilité pdflatex est toutefois disponible.

Depuis la version 1.2

La version 2.0 a changé le rendu par défaut : titre de diapositive ruled, grands titres maigres et motif de disques sur la page de titre et les pages de section. La version 2.1 donne à chaque famille de blocs un style accordé à son rôle (panneau pâle, repère mast ou filet ruled) et une couleur par type de bloc ; le code prend un filet fin (hairline) et ses lignes sont numérotées dans les blocs larges. La version 2.3 allège le code : un fond à peine visible (soft), un filet seulement avec les numéros de ligne, aucun fond dans les blocs, et les environnements code, code* et results ; les blocs natifs de beamer prennent un cadre fin (framed). La palette par défaut (nordic) et les couleurs des palettes sont inchangées, à une exception près : la couleur des blocs de velvet, désormais prune. Le thème présente désormais dix palettes et six styles prédéfinis ; les autres restent acceptés. Les réglages suivants donnent le rendu le plus proche de la version 1.2 :

\usetheme[
    frametitle=subtle, block=sober,
    codestyle=bar, codenumbers=false,
    titlesize=LargeLARGE, sectiontitlesize=LARGE,
    titleweight=bfseries, motif=false
]{Celestia}

Langue

Option language

Définit la langue de la présentation, passée automatiquement à l'extension babel. En mode french, les noms des environnements mathématiques (théorème, définition, etc.) et des légendes de code sont automatiquement traduits.

Valeur par défaut : english

Sans cette option, le thème suit la langue du document : celle de babel ou de polyglossia, chargés avant ou après le thème, ou l'option de la classe (\documentclass[french]{beamer}). Il ne charge babel lui-même que si le document ne l'a pas fait. Quand ni language ni l'option de la classe ne désignent la langue, ce chargement attend la fin du préambule : pour y employer une commande de babel (\frenchsetup, \addto\captionsfrench), charger babel soi-même ou donner l'option language.

\usetheme[language=french]{Celestia}

Styles prédéfinis

Option style

Le thème propose des styles prédéfinis qui configurent automatiquement plusieurs options (palette, frametitle, footerstyle, block) pour un rendu cohérent.

Styles disponibles

celestia
celestia
modern
modern
signature
signature
executive
executive
sober
sober
stage
stage
\usetheme[style=signature]{Celestia}

Les options individuelles s'ajoutent au style pour personnaliser davantage. Un réglage donné explicitement l'emporte toujours sur celui du style, quel que soit l'ordre des options :

\usetheme[style=modern, palette=petrol]{Celestia}

Styles des versions 1.x

Les huit autres styles des versions 1.x restent acceptés, avec leurs réglages et leurs couleurs : minimal, studio, academic, design, simple, editorial, lumiere et chalk.

Palettes de couleurs

Palettes prédéfinies

Le thème propose dix palettes. Chacune définit six couleurs : principale (main), accent, bloc standard (blockcolor), exemple (examplecolor), alerte (alertcolor) et fond (background).

Option palette

Valeur par défaut : nordic

Palettes disponibles

nordic
nordic
palatial
palatial
petrol
petrol
terracotta
terracotta
velvet
velvet
forest
forest
burgundy
burgundy
graphite
graphite
midnight
midnight
dusk
dusk
\usetheme[palette=petrol]{Celestia}

Note : les palettes midnight et dusk utilisent un fond sombre. Elles conviennent bien aux présentations projetées dans des salles obscures.

Palettes des versions 1.x

Les quinze autres palettes des versions 1.x restent acceptées, afin que les diaporamas existants et les styles prédéfinis qui les emploient gardent leurs couleurs : chalk, copper, horizon, imperial, lumiere, manuscript, mineral, obsidian, oxford, prestige, royal, sakura, sapphire, steel et velours.

Palette personnalisée

Option custompalette

Permet de définir une palette complète personnalisée en spécifiant six couleurs hexadécimales (sans le #) dans l'ordre : couleur principale, accent, bloc standard, bloc exemple, bloc alerte, fond.

\usetheme[
    custompalette={2C3E50,E74C3C,3498DB,27AE60,E67E22,ECF0F1}
]{Celestia}

Pour une palette sombre, ajouter light=false : seules les palettes sombres fournies passent d'elles-mêmes le texte en graisse normale.

Couleurs individuelles

Pour une personnalisation plus fine, chaque couleur peut être redéfinie séparément (codes hexadécimaux sans le #) :

\usetheme[
    maincolor=045549,
    accentcolor=E63946,
    backgroundcolor=FAFAFA,
    blockcolor=1A3B52
]{Celestia}

Le fond d'un type de bloc est toujours calculé à partir de sa couleur : il suit donc une couleur redéfinie.

Couleurs nommées accessibles

Les couleurs de la palette active sont exposées globalement sous forme de noms de couleurs LaTeX, directement utilisables dans TikZ, \color{...}, \textcolor{...}, etc. Leur valeur suit automatiquement la palette sélectionnée : inutile de recopier le code hexadécimal à la main.

\begin{tikzpicture}
    \fill[background] (0,0) rectangle (2,1);
    \draw[main, thick] (0,0) -- (2,1);
    \node[fill=accent, text=background] at (1,0.5) {Texte};
\end{tikzpicture}

Option unicolor

Active un mode monochrome où la couleur d'emphase est utilisée pour tous les éléments (blocs, items, décorations). Seules les alertes gardent leur couleur.

\usetheme[unicolor]{Celestia}

Options emphasis et decoration

Ces deux options contrôlent les couleurs utilisées respectivement pour les éléments d'emphase (titres, items) et les décorations (lignes, ornements).

Option emphasis

Valeur par défaut : main

Option decoration

Valeur par défaut : suit la valeur de emphasis

Permet de choisir indépendamment la couleur des éléments décoratifs (main ou accent).

\usetheme[emphasis=accent, decoration=main]{Celestia}

Les puces et les numéros des listes prennent la couleur de décoration. Les numéros sont composés à la graisse du texte ; pour les mettre en gras :

\setbeamerfont{enumerate item}{series=\bfseries}

Polices

Polices par défaut

Personnalisation des polices

\usetheme[
    serifface=EB Garamond,
    seriffaceoptions={Scale=1.1},
    sansface=Montserrat,
    monoface=Fira Code
]{Celestia}

Pour désactiver le chargement de la police serif : serifface=none.

Avec pdfLaTeX, serifface, sansface et monoface désignent un paquet de polices, qui reçoit les options seriffaceoptions, sansfaceoptions et monofaceoptions. Certains paquets ne remplacent la police qu'avec une option : sansface=lato, sansfaceoptions=defaultsans.

Différences entre moteurs pour la recherche de polices

LuaLaTeX et XeLaTeX utilisent tous deux fontspec, mais leur mécanisme de découverte des polices diffère. LuaLaTeX maintient sa propre base de données (luaotfload) et trouve les polices par nom de famille (ex. Source Sans 3) de façon fiable. XeLaTeX s'appuie sur les bibliothèques système (fontconfig sous Linux, Core Text sous macOS), qui peuvent ne pas reconnaître le même nom.

Si une police personnalisée n'est pas trouvée, le thème utilise la famille TeX Gyre en repli et émet un avertissement. Pour éviter ce repli sous XeLaTeX :

Option allserif

Utilise la police principale avec empattements comme police par défaut et active le thème serif de Beamer.

\usetheme[allserif]{Celestia}

Option semibold

Active le mode demi-gras (semibold, poids 600) pour le gras des polices principale et sans empattements. En pdflatex, cela utilise \DeclareFontSeriesDefault. En LuaLaTeX/XeLaTeX, cela ajoute automatiquement BoldFeatures={Weight=600} aux options fontspec.

Valeur par défaut : true

Avec light=false donné explicitement, la valeur par défaut devient false : le gras passe en Bold (poids 700), ce qui garde entre le texte et le gras le même écart qu'avec la graisse légère. L'option semibold, donnée explicitement, rétablit le demi-gras.

\usetheme[semibold=false]{Celestia}

Option light

Utilise des graisses légères pour le texte courant (poids 300 pour la police sans empattements en LuaLaTeX/XeLaTeX, ou l'option light pour Inter en pdflatex). Applique également une graisse plus légère à la police à chasse fixe.

Valeur par défaut : true

Avec les palettes à fond sombre du thème, le texte est composé en graisse normale, plus lisible en clair sur fond sombre. L'option light, donnée explicitement, y rétablit la graisse légère.

La graisse légère convient à la lecture sur écran ; pour la projection en classe, light=false compose en graisse normale le texte, la police à chasse fixe et les formules, et le gras en Bold (voir l'option semibold).

\usetheme[light=false]{Celestia}

Police mathématique

Option mathface

Définit la police mathématique. Par défaut, les formules sont composées en Inter, la police du texte : lettres, chiffres et lettres grecques y prennent la graisse du texte (maigre ou normale selon l'option light), avec les trois moteurs. Les autres signes restent ceux de Computer Modern. Pour les autres valeurs prédéfinies, LuaLaTeX et XeLaTeX utilisent unicode-math ; en pdflatex, des extensions classiques sont chargées à la place.

Valeur par défaut : inter. Le thème revient à iwona avec l'option allserif, avec une autre police sans empattement qu'Inter, ou lorsque les polices Type 1 de l'extension inter ne sont pas installées.

Valeurs prédéfinies

Toute autre valeur est passée directement à \setmathfont (LuaLaTeX/XeLaTeX) ou \RequirePackage (pdflatex).

\usetheme[mathface=pagella]{Celestia}

Option mathfaceoptions

Options supplémentaires passées à \setmathfont (LuaLaTeX/XeLaTeX uniquement).

\usetheme[mathface=pagella, mathfaceoptions={Scale=1.05}]{Celestia}

Mise en page

Marges

Option margin

Définit la marge gauche et droite du contenu des diapositives.

Valeur par défaut : 2em

\usetheme[margin=1.5em]{Celestia}

Style du titre de diapositive

Option frametitle

Définit le style d'affichage du titre de chaque diapositive.

Valeur par défaut : ruled

Valeurs possibles

ruled
ruled
subtle
subtle
plainrule
plainrule
plain
plain
cosmic
cosmic
line
line
gradient
gradient
clean
clean
elegant
elegant
leftbar
leftbar
\usetheme[frametitle=elegant]{Celestia}

Chaque style supporte un sous-titre via \framesubtitle{...}.

Espacement du titre

Deux options, frametitlepadding et frametitlebottomskip, ajustent les espacements du titre quel que soit le style sélectionné. Elles servent à compacter la zone de titre afin de gagner de l'espace vertical, sans changer l'esthétique du style.

\usetheme[frametitle=subtle, frametitlepadding=0.5em,
          frametitlebottomskip=-1.5em]{Celestia}

Note : sur les frames courtes, beamer centre verticalement le contenu, ce qui peut masquer l'effet de frametitlebottomskip. Le thème place ce contenu un peu au-dessus du milieu : un tiers de l'espace libre au-dessus, deux tiers en dessous. Pour un alignement haut strict, utiliser l'option [t] de \begin{frame} ou la classe.

Page de titre

La page de titre présente le sujet, le titre en grand corps et le sous-titre. Un filet les sépare de l'auteur, de l'institution et de la date ; il n'est pas tracé quand ces trois champs sont vides.

Option titlealign

Définit l'alignement du contenu sur la page de titre.

Valeur par défaut : left

Valeurs possibles : left, center, right

\usetheme[titlealign=center]{Celestia}
left
left
center
center
right
right

Option titlebackground

Permet de spécifier une image de fond (affichée avec une opacité réduite) pour la page de titre.

\usetheme[titlebackground=images/background.jpg]{Celestia}

Commande \subject

Définit un sujet affiché en capitales espacées au-dessus du titre principal sur la page de titre, ainsi que dans les métadonnées PDF.

\subject{Sciences de l'informatique}
\title{Introduction aux graphes}

Commande \titlegraphic

Place une image, un logo par exemple, sur la page de titre : en haut à droite, ou au-dessus du sujet quand le contenu est centré.

\titlegraphic{\includegraphics[height=1.2cm]{logo}}

Option motif

Dessine un motif de disques pâles dans l'angle inférieur droit de la page de titre, des pages de section et de sous-section et des pages d'emphase. Sur la page de titre, une image donnée par titlebackground le remplace.

Valeur par défaut : true

\usetheme[motif=false]{Celestia}

Style des titres

Famille de police

Option headstyle

Définit la famille de police pour les titres.

Valeur par défaut : sffamily

Valeurs possibles : sffamily (sans empattements), rmfamily (avec empattements)

Forme des caractères

Option headshape

Définit la forme des caractères pour les titres.

Valeur par défaut : normal

Valeurs possibles : normal, sc (petites capitales), it (italique)

Graisse

Option headweight

Définit la graisse des titres de diapositive.

Valeur par défaut : bfseries

Valeurs possibles : bfseries (gras), mdseries (poids moyen)

Option titleweight

Définit la graisse des grands titres : titre de la page de titre, titres des pages de section et de sous-section.

Valeur par défaut : mdseries

Valeurs possibles : mdseries (graisse du texte, maigre par défaut), bfseries (gras)

Graisse des titres de blocs

Option blocktitleweight

Définit la graisse des titres des blocs tcolorbox.

Valeur par défaut : bfseries

Valeurs possibles : bfseries (gras), mdseries (poids moyen)

Taille des titres

Le thème permet de personnaliser la taille de différents éléments de titre. En plus des tailles LaTeX standard, Celestia définit des tailles intermédiaires pour un contrôle plus fin :

Tailles disponibles

Les tailles LaTeX standard sont disponibles : tiny, scriptsize, footnotesize, small, normalsize, large, Large, LARGE, huge, Huge.

Celestia ajoute des tailles intermédiaires entre chaque paire consécutive :

\usetheme[
    titlesize=hugeHuge,
    frametitlesize=large,
    sectiontitlesize=LARGEhuge,
    footertextsize=scriptsize
]{Celestia}

Exemple complet

\usetheme[
    headstyle=rmfamily,
    headshape=sc,
    headweight=mdseries,
    titleweight=bfseries,
    blocktitleweight=bfseries
]{Celestia}

Pied de page

Option footerstyle

Définit le style du pied de page (masqué sur la première diapositive).

Valeur par défaut : info

Valeurs possibles

Dans les pieds à plusieurs colonnes, un auteur et un titre longs peuvent se toucher : leur donner une forme courte, \author[court]{...} et \title[court]{...}.

info
info
minimalist
minimalist
prestige
prestige
cosmic
cosmic
badge
badge
classic
classic
fullbar
fullbar
ruled
ruled
framed
framed
boxed
boxed
boxedruled
boxedruled

Le numéro s'écrit sous la forme « 12 / 40 » (diapositive courante, puis total), sauf dans le style minimalist qui ne donne que le numéro courant.

\usetheme[footerstyle=info]{Celestia}

Option progressbar

Ajoute une barre de progression en bas de chaque diapositive. Pour les styles info et minimalist, la barre est intégrée nativement dans le pied de page. Pour les autres styles, elle est affichée en superposition au bas de la page.

Valeur par défaut : false

\usetheme[progressbar]{Celestia}

Annexes

Les diapositives placées après la commande \appendix ne comptent pas dans le total affiché : le numéro de diapositive et la barre de progression portent sur la partie principale, et les annexes sont numérotées à part. On peut ainsi placer des corrections ou des compléments en fin de diaporama sans fausser la numérotation.

\begin{frame}{Conclusion}
    ...
\end{frame}

\appendix

\begin{frame}{Corrections}
    ...
\end{frame}

Option shownavigation

Affiche les symboles de navigation Beamer au-dessus du pied de page, à droite (désactivés par défaut).

\usetheme[shownavigation]{Celestia}

Table des matières

Les numéros de section occupent une colonne de largeur fixe : les titres s'alignent sur une même verticale. L'écart entre deux sections se resserre de lui-même quand la liste est longue.

Option compacttoc

Réduit l'espacement vertical entre les entrées de la table des matières.

\usetheme[compacttoc]{Celestia}

Option twocoltoc

Répartit automatiquement les sections sur deux colonnes.

\usetheme[twocoltoc]{Celestia}

Commande \twocolumntoc

Permet de contrôler manuellement la répartition sur deux colonnes en spécifiant les plages de sections.

\twocolumntoc[1][5][10]

Cet exemple place les sections 1 à 4 dans la colonne gauche et les sections 5 à 10 dans la colonne droite.

Blocs

Types de blocs

Trois types de blocs Beamer sont disponibles, chacun associé à une couleur sémantique :

\begin{block}{Titre du bloc}
    Contenu du bloc standard (couleur blockcolor)
\end{block}

\begin{exampleblock}{Exemple}
    Contenu du bloc exemple (couleur examplecolor)
\end{exampleblock}

\begin{alertblock}{Attention}
    Contenu du bloc alerte (couleur alertcolor)
\end{alertblock}

Style des blocs

Option block

Définit le dessin des blocs.

Valeur par défaut : roles

Avec la valeur roles, chaque famille de blocs reçoit le style accordé à son rôle dans l'exposé : un panneau pour les définitions et les théorèmes, un repère en face du titre pour les exemples, les remarques et les activités, un filet sous le titre pour les exercices (voir la partie « Styles par famille de blocs »). Toute autre valeur donne le même style à tous les blocs.

Styles tcolorbox

callout
callout
line
line
soft
soft
shaded
shaded
ruled
ruled
underline
underline
discs
discs
plain
plain
card
card
ribbon
ribbon
framed
framed
mast
mast
masthead
masthead
mastbox
mastbox
bracket
bracket
legend
legend
legendbox
legendbox
outline
outline
badge
badge
softbadge
softbadge
\usetheme[block=line]{Celestia}

Option blockfill

Ajoute ou retire le fond teinté des blocs. Chaque style a sa valeur naturelle : sans fond pour line, plain, ribbon, framed et outline, avec fond pour callout, card, soft, shaded, ruled, underline, discs, badge et softbadge. L'option blockfill (ou blockfill=true) ajoute le fond, blockfill=false le retire. Le style discs garde toujours son fond ; les styles mast, masthead, mastbox, bracket, legend et legendbox n'en ont jamais.

\usetheme[blockfill=false]{Celestia}
\usetheme[block=ruled, blockfill=false]{Celestia}
\usetheme[block=line, blockfill]{Celestia}

Option blockcorners

Fixe la forme des coins des styles callout, plain, card, framed et outline : rounded (coins arrondis, valeur naturelle de plain) ou sharp (angles droits, valeur naturelle des quatre autres). Avec callout, la barre latérale suit l'arrondi.

\usetheme[blockcorners=rounded]{Celestia}
\usetheme[block=plain, blockcorners=sharp]{Celestia}

Couleurs des blocs

Chaque type de bloc a sa couleur, la même dans tous les styles : elle se lit dans le titre, la barre ou le bandeau, et le fond du bloc en est une teinte pâle : la couleur du bloc mêlée au fond de la page, à 7 % sous le texte et à 26 % dans les bandeaux de titre. Les blocs standards, les exemples et les alertes prennent les couleurs blockcolor, examplecolor et alertcolor de la palette. Les remarques et les méthodes reçoivent deux couleurs dessinées pour chaque palette, remarkcolor et methodcolor. Avec une palette personnalisée, les remarques prennent la couleur du texte et les méthodes la couleur d'accent.

Noms des versions précédentes

Les noms suivants restent acceptés : bar (line avec fond), fullbar (ribbon avec fond), noback (soft sans fond) et sober (soft).

Styles Beamer natifs

native
native
native-shadow
native-shadow
native-default
native-default

Ces trois styles reposent sur les blocs de Beamer et non sur tcolorbox : les options blockfill et blockcorners ne s'y appliquent pas.

\usetheme[block=native]{Celestia}

Options d'opacité des blocs

Donner une valeur à l'une des options suivantes rétablit, pour le style concerné, le fond des versions 1.x : la couleur du bloc mêlée au fond de la page, dans la proportion indiquée (valeur décimale entre 0 et 1). Avec auto, valeur par défaut, chaque palette garde le fond dessiné pour elle :

\usetheme[block=sober, soberblockopacity=0.25]{Celestia}

Styles par famille de blocs

Les blocs et les environnements du thème se répartissent en douze familles, selon leur rôle dans l'exposé. Chaque famille a son option. Avec block=roles, valeur par défaut, les familles reçoivent les styles de la dernière colonne.

Famille Option Couleur Environnements Style
Définitions definitionblock examplecolor definition callout
Résultats theoremblock blockcolor theorem, proposition, property, lemma, corollary callout
Méthodes methodblock methodcolor method callout
Alertes alertblock alertcolor alertblock framed
Blocs standards standardblock blockcolor block framed
Blocs exemples nativeexampleblock examplecolor exampleblock framed
Démonstrations proofblock blockcolor proof mast
Exemples exampleblock examplecolor example mast
Remarques remarkblock remarkcolor remark mast
Activités activityblock methodcolor activity, application mast
Exercices exerciseblock methodcolor exercise ruled
Synthèses summaryblock blockcolor summary card
Panneau et repères
Panneau et repères
Méthode, activité, exercice
Méthode, activité, exercice
Synthèse
Synthèse

Quatre dessins se partagent ainsi la page. Ce qu'il faut savoir tient sur un panneau pâle bordé d'une barre latérale pour les définitions, les résultats et les méthodes (callout), que seule la couleur distingue ; les alertes et les blocs standards ont leur titre sur un bandeau pâle, dans un cadre fin (framed). Ce qui accompagne (exemples, remarques, démonstrations, activités, applications) ne porte qu'un repère en face du titre, prolongé d'un filet fin qui se referme en crochet sous le texte (mast). Les exercices ont un filet sous le titre, sans fond (ruled avec le mot nofill). La synthèse, qui clôt une partie, reçoit seule un cadre à bandeau plein, sur un panneau pâle (card).

Les trois blocs natifs de beamer (block, exampleblock et alertblock) partagent ce cadre à bandeau, chacun à sa couleur. Chacun a son option : standardblock, nativeexampleblock et alertblock. L'option exampleblock, elle, ne règle que l'environnement example. Les environnements au pluriel, comme definitions ou exercises, suivent leur famille. Un environnement créé par \newtheorem suit la famille des résultats, ou celle des exemples s'il est déclaré après \theoremstyle{example}.

Une option de famille prend le nom d'un style tcolorbox de la liste précédente. Elle l'emporte sur l'option block.

\usetheme[theoremblock=ruled, proofblock=masthead]{Celestia}
\usetheme[block=line, summaryblock=shaded]{Celestia}

La première ligne garde la répartition par défaut et change deux familles. La seconde donne le style line à tous les blocs, sauf aux synthèses.

Le fond et les coins se règlent aussi par famille. À la suite du nom du style, entre accolades, les mots fill et nofill ajoutent ou retirent le fond, les mots rounded et sharp fixent les coins. Sans ces mots, la famille suit les options blockfill et blockcorners.

\usetheme[theoremblock={ruled, nofill}, alertblock={callout, rounded}]{Celestia}

La valeur auto rend une famille au réglage général, donné par l'option block :

\celestiaset{theoremblock=auto}

Les options de famille sont sans effet avec les blocs natifs de Beamer.

Pages spéciales

Pages d'emphase (standout)

L'option de frame standout transforme une diapositive en page d'emphase avec fond coloré inversé, sans titre ni pied de page. C'est une option de frame uniquement : elle ne se passe pas dans les options du thème.

\usetheme{Celestia}

\begin{frame}[standout]
    Message important

    \vspace{1em}
    \large --- Citation
\end{frame}

Pages de citation

L'option de frame quote compose une citation centrée, en grand corps, sur un fond teinté, sans titre ni pied de page.

\begin{frame}[quote]
    Le texte de la citation.\\[0.6em]
    {\small Son auteur}
\end{frame}
Page d'emphase
Page d'emphase
Page de citation
Page de citation

Pages d'image

\imagepage[légende]{fichier} crée une diapositive dont l'image couvre toute la page. La légende, facultative, s'affiche en bas à gauche. La commande s'emploie hors de tout environnement frame.

\imagepage[Maquette du site, échelle 1/200.]{images/maquette.jpg}

Pages de section

Options des pages de section

Contrôle l'affichage automatique des pages de section. Le titre de la section y figure en grand corps, sur un fond teinté, sous le titre du diaporama rappelé en capitales espacées.

Valeurs par défaut : sectionpage=true, sectionnumber=false, subsectionpage=false

\usetheme[sectionpage=false]{Celestia}
\usetheme[sectionnumber]{Celestia}
\usetheme[subsectionpage]{Celestia}

Les commandes \sectionpage et \subsectionpage composent ces pages à la demande, dans une frame.

Plan sur la page de section

L'option sectiontoc rappelle le plan du diaporama sur chaque page de section : l'auditoire voit où l'on en est. Elle existe sous deux formes.

Valeur par défaut : false

\usetheme[sectiontoc, sectionnumber]{Celestia}
\usetheme[sectiontoc=dots]{Celestia}
Par défaut
Par défaut
sectionnumber
sectionnumber
sectiontoc
sectiontoc
sectiontoc=dots
sectiontoc=dots

Quand la liste est trop longue pour tenir sur la page (au-delà d'une douzaine de sections, ou avec des titres sur plusieurs lignes), le thème passe de lui-même à la forme dots. Le plan demande deux compilations.

Pour désactiver manuellement dans le document :

\AtBeginSection{}

La commande \celestiaset{sectionpage=false} fait de même à partir de l'endroit où elle est placée, et \celestiaset{sectionpage} rétablit les pages de section.

Code source

Gestionnaire de code

Option codehandler

Définit le système de gestion de la coloration syntaxique.

Valeur par défaut : listings

Valeurs possibles : listings (extension listings) ou minted (extension minted, nécessite Pygments)

\usetheme[codehandler=minted]{Celestia}

En mode french, le nom des légendes de code est automatiquement remplacé par « Programme ».

Style des blocs de code

Option codestyle

Définit le style visuel des blocs de code.

Valeur par défaut : soft

Valeurs possibles

soft
soft
minimal
minimal
hairline
hairline
tint
tint
bar
bar
frame
frame
macos
macos
box
box
\usetheme[codestyle=minimal]{Celestia}

Code dans un bloc

Dans un bloc (block, definition, example, etc.), le code n'a jamais de fond : le bloc l'encadre déjà. Avec soft, minimal, hairline et tint, il s'aligne sur le texte du bloc ; ses numéros partent de la marge du texte et un filet à la couleur du bloc les sépare du code (tint n'a pas de filet, hairline garde le sien même sans numéros). Les autres styles gardent leur cadre ou leur barre. Le nom du langage n'y figure pas.

Dans un bloc
Dans un bloc
Dans un bloc, avec des numéros
Dans un bloc, avec des numéros

Environnements code, code* et results

Le thème fournit trois environnements, avec listings comme avec minted :

L'argument obligatoire de code et code* donne le langage : un style de listings (python, latex) ou un langage (C, SQL), un analyseur de minted (python, c). L'argument optionnel reçoit les options du gestionnaire de code, par exemple caption=... avec listings.

\begin{code}{python}
for n in range(1, 4):
    print(f"{n} au carré vaut {n * n}")
\end{code}
\begin{results}
1 au carré vaut 1
2 au carré vaut 4
3 au carré vaut 9
\end{results}
code et results
code et results

Un document qui définit déjà son propre environnement code ou results garde le sien. Les environnements lstlisting et minted restent disponibles ; leurs numéros suivent l'option codenumbers.

Encadrement du code

Options du cadre

Contrôle l'encadrement des blocs de code avec tcolorbox.

Par défaut : codebox=true (encadrement activé)

\usetheme[codebox=false]{Celestia}

Nom du langage et numéros de ligne

Option codelabel

Avec listings, le nom du langage s'affiche en petites capitales dans l'angle supérieur droit du bloc de code, avec les styles à fond. Il est omis avec minimal, qui n'a pas de fond où le poser, à l'intérieur d'un bloc, dans les blocs étroits, qui occupent au plus 45 % de la largeur de la diapositive (une colonne sur deux, par exemple), et quand la première ligne du code est assez longue pour l'atteindre.

Valeur par défaut : true

\usetheme[codelabel=false]{Celestia}

Option codenumbers

Numérote les lignes du code. Avec minimal et à l'intérieur d'un bloc, les numéros s'alignent à droite à partir de la marge du texte ; avec les styles à fond, ils sont centrés dans une gouttière, à gauche du bloc. La colonne des numéros prend la largeur du plus grand numéro : elle est exacte à partir de la deuxième compilation.

Valeur par défaut : auto

Valeurs possibles

Un bloc est large quand il occupe plus de 45 % de la largeur de la diapositive : un bloc sur toute la largeur l'est, un bloc dans une colonne sur deux ne l'est pas. Le langage est connu quand le bloc le précise (style=python, language=C) ou qu'un \lstset l'a fixé, et toujours avec minted. Les environnements code et code* l'emportent sur cette option, de même qu'un bloc marqué numbers=none (listings) ou linenos=false (minted). Le code en ligne et l'environnement results ne sont jamais numérotés.

\usetheme[codenumbers=false]{Celestia}
soft
soft
minimal
minimal
hairline
hairline
tint
tint
bar
bar
frame
frame
macos
macos
box
box

Les deux options se changent en cours de document, par exemple pour numéroter le code d'une seule diapositive :

\begin{frame}[fragile, celestia={codenumbers}]{Programme}
    ...
\end{frame}

Utilisation avec listings

\begin{lstlisting}[style=python]
def fibonacci(n):
    if n <= 1:
        return n
    return fibonacci(n-1) + fibonacci(n-2)
\end{lstlisting}

Un style python est prédéfini. Les mots-clés sont en gras à la couleur d'accent lisible (accenttext), les fonctions intégrées (print, len, range, etc.) à la couleur des méthodes, les constantes True, False et None à la couleur des remarques, et les chaînes à la couleur des exemples. language=Python donne les mêmes couleurs.

Formatage du texte

Commandes spéciales

Option boldurl

Active les URLs en gras dans les hyperliens.

\usetheme[boldurl]{Celestia}

Composants

Les commandes \source, \keyfigure, \tablehead et \imagepage ne sont définies par le thème que si le document ne définit pas déjà une commande du même nom : dans ce cas, c'est celle du document qui est conservée.

Source d'un document

\source{...} inscrit une ligne de source en petit corps, au-dessus du pied de page, sur la marge gauche. Elle occupe la place des notes de bas de page : ne pas l'employer sur une diapositive qui en porte une.

\begin{frame}{Population}
    ...
    \source{Source : Insee, 2025.}
\end{frame}

Chiffre clé

\keyfigure{nombre}{libellé} compose un nombre en grand corps, suivi de son libellé. La commande occupe la largeur de la colonne où elle est placée.

\begin{columns}
    \begin{column}{0.3\textwidth}
        \keyfigure{298}{mètres carrés}
    \end{column}
    \begin{column}{0.3\textwidth}
        \keyfigure{3}{maisons en gradins}
    \end{column}
\end{columns}
Chiffres clés et source
Chiffres clés et source

Tableaux

Les filets des tableaux prennent une teinte adoucie de la couleur principale. \tablehead{...} met en forme une cellule d'en-tête.

\begin{tabular}{lr}
    \hline
    \tablehead{Variante} & \tablehead{Surface} \\
    \hline
    Bande & 312 \\
    Gradins & 298 \\
    \hline
\end{tabular}

Environnements mathématiques

Le thème définit des environnements pour les théorèmes et définitions avec une syntaxe simplifiée basée sur tcolorbox. Chaque environnement accepte des options entre crochets : title pour le sous-titre et label pour la référence croisée. Le style de chaque environnement est celui de sa famille (voir la partie « Styles par famille de blocs »).

Environnements de type block

Environnements de type example

Autres environnements

Si le document ou un autre paquet définit déjà un environnement exercise, le thème garde cette définition.

La couleur d'alerte est réservée aux blocs alertblock.

Synthèse

L'environnement summary compose la synthèse d'une partie, sous le titre « À retenir » (« Key points » en anglais). L'option title ajoute une précision entre parenthèses.

\begin{summary}
    \begin{itemize}
        \item Une suite géométrique de raison $q$ vérifie $u_{n+1} = q \times u_n$.
        \item Son terme général est $u_n = u_0 \times q^n$.
    \end{itemize}
\end{summary}

Syntaxe

\begin{theorem}[title=Pythagore, label=th:pyth]
    Dans un triangle rectangle, $a^2 + b^2 = c^2$.
\end{theorem}

Cette syntaxe clé-valeur s'applique à tous les styles de blocs basés sur tcolorbox (par défaut). Avec les styles natifs (native, native-shadow et native-default), les environnements acceptent [title=...] seul, sans label ni option tcolorbox, ainsi que la syntaxe Beamer habituelle :

\begin{theorem}[Pythagore]
    Dans un triangle rectangle, $a^2 + b^2 = c^2$.
\end{theorem}

Attention : avec les blocs tcolorbox, l'écriture [Pythagore], sans title=, provoque une erreur de compilation.

Chaque environnement dispose également d'une version étoilée (non numérotée) :

\begin{definition*}[title=Nombre premier]
    Un nombre premier est un entier naturel ayant exactement
    deux diviseurs distincts.
\end{definition*}

Des options tcolorbox supplémentaires peuvent être passées directement :

\begin{remark}[title=Important, colback=red!5]
    Contenu avec personnalisation locale.
\end{remark}

Indications d'overlay

Chaque environnement accepte une indication d'overlay Beamer entre chevrons, placée immédiatement après le nom :

\begin{definition}<2->[title=Entiers naturels]
    L'ensemble $\mathbb{N}$ apparait à partir du deuxième overlay.
\end{definition}

Le compteur de l'environnement est figé entre les overlays d'une même frame, qu'on utilise la syntaxe <...> ou la commande \pause. La numérotation reste donc stable d'un overlay à l'autre.

Environnement quiz

L'environnement quiz permet de créer des questionnaires à choix multiples avec révélation de la bonne réponse sur la deuxième superposition (overlay).

\begin{quiz}
    \item Réponse A
    \item Réponse B
    \correct{Réponse C (bonne réponse)}
    \item Réponse D
\end{quiz}

La commande \correct{...} marque la bonne réponse, qui apparaît en couleur d'alerte sur <2>.

Bonne réponse révélée
Bonne réponse révélée

Bibliographie

Le thème offre un support automatique pour biblatex et natbib. Les couleurs des entrées bibliographiques sont configurées pour s'intégrer au thème.

\usepackage[backend=biber]{biblatex}
\addbibresource{references.bib}

\begin{frame}{Références}
    \printbibliography
\end{frame}

Réglages en cours de document

Les options données à \usetheme valent pour tout le document. Deux moyens permettent de changer un réglage pour une partie du document ou pour une seule diapositive : la commande \celestiaset et l'option de diapositive (option de frame) celestia. Tous deux prennent les mêmes options que \usetheme, avec les mêmes valeurs.

Pour la suite du document

Placée entre deux diapositives, la commande \celestiaset s'applique à toutes les diapositives qui suivent, jusqu'au prochain changement.

\begin{frame}{Cours}
    ...
\end{frame}

\celestiaset{block=shaded, footerstyle=minimalist}

\begin{frame}{Exercices}
    ...
\end{frame}

Comme tout réglage de LaTeX, celui-ci reste limité au groupe où il est donné : entre accolades, il cesse à l'accolade fermante.

{\celestiaset{palette=oxford}
\begin{frame}{Première diapositive en oxford}
    ...
\end{frame}
\begin{frame}{Seconde diapositive en oxford}
    ...
\end{frame}
}

Pour une seule diapositive

L'option de diapositive celestia s'applique à une diapositive entière : titre, contenu, fond et pied de page. La diapositive suivante retrouve les réglages du document. L'option se combine avec les autres options de diapositive (fragile, plain, standout, etc.).

\begin{frame}[celestia={block=plain, blockfill}]{Bilan}
    ...
\end{frame}

\begin{frame}[celestia={palette=midnight}]{Une diapositive sombre}
    ...
\end{frame}

\begin{frame}[fragile, celestia={style=stage}]{Programme}
    ...
\end{frame}

À l'intérieur d'une diapositive

Dans le corps d'une diapositive, \celestiaset agit sur ce qui suit, jusqu'à la fin de la diapositive (ou de la colonne, ou du groupe, où la commande se trouve).

\begin{frame}{Deux styles de blocs}
    \begin{block}{Rappel}
        ...
    \end{block}
    \celestiaset{block=ruled}
    \begin{block}{À retenir}
        ...
    \end{block}
\end{frame}

Le titre, le fond et le pied de page d'une diapositive sont composés à part, après son contenu : pour les changer, il faut l'option de diapositive celestia, ou la commande \celestiaset placée avant la diapositive. Un avertissement le rappelle dans le journal de compilation.

Réglages modifiables

Domaine Options
Blocs block, blockfill, blockcorners, blocktitleweight,
theoremblock, definitionblock, proofblock, exampleblock,
remarkblock, methodblock, activityblock, exerciseblock,
alertblock, standardblock, nativeexampleblock, summaryblock
Style prédéfini style
Couleurs palette, custompalette, maincolor, accentcolor, backgroundcolor,
blockcolor, examplecolor, alertcolor, remarkcolor, methodcolor,
codebackgroundcolor, emphasis, decoration, unicolor
Titre de diapositive frametitle, frametitlesize, frametitlepadding,
frametitlebottomskip, headstyle, headshape, headweight
Pied de page footerstyle, footertextsize, progressbar
Page de titre motif, titlealign, titlebackground, titlesize, subtitlesize,
titleweight
Pages de section sectionpage, subsectionpage, sectionnumber, sectiontoc,
sectiontitlesize
Code codelabel, codenumbers

Les autres options se fixent une fois pour toutes dans \usetheme : les polices (sansface, serifface, monoface, mathface, allserif, light, semibold), la langue, les marges, la table des matières, le style et le gestionnaire du code, et le choix des blocs natifs de Beamer. Données à \celestiaset, elles sont laissées de côté et signalées par un avertissement, de même qu'une valeur inconnue.

Précisions

Récapitulatif des options

Options booléennes

Option Défaut Description
allserif false Police serif pour tout le document
semibold true Gras en mode demi-gras (poids 600)
light true Graisses légères pour le texte courant
unicolor false Mode monochrome
compacttoc false Table des matières compacte
twocoltoc false Table des matières sur deux colonnes
codebox true Encadrement des blocs de code
nocodeframe false Tcolorbox sans bordure pour le code
codelabel true Nom du langage dans l'angle du bloc de code
codenumbers auto Numéros de ligne du code
shownavigation false Symboles de navigation Beamer
boldurl false URLs en gras
sectionpage true Pages de section automatiques
sectionnumber false Numéro devant le titre de section
subsectionpage false Pages de sous-section automatiques
motif true Motif de la page de titre et des pages de section
progressbar false Barre de progression en pied de page

Options à valeur

Option Défaut Description
language english Langue du document
palette nordic Palette de couleurs
style — Style prédéfini
block roles Style des blocs
blockfill (selon le style) Fond teinté des blocs
blockcorners (selon le style) Coins des blocs
theoremblock auto Style des théorèmes et des autres résultats
definitionblock auto Style des définitions
proofblock auto Style des démonstrations
exampleblock auto Style des exemples (environnement example)
nativeexampleblock auto Style des blocs exampleblock
remarkblock auto Style des remarques
methodblock auto Style des méthodes
activityblock auto Style des activités et des applications
exerciseblock auto Style des exercices
alertblock auto Style des blocs d'alerte
standardblock auto Style des blocs standards
summaryblock auto Style des synthèses
frametitle ruled Style du titre de diapositive
footerstyle info Style du pied de page
codestyle soft Style des blocs de code
codehandler listings Gestionnaire de code
titlealign left Alignement du titre
sectiontoc false Plan sur les pages de section
emphasis main Couleur d'emphase
decoration (suit emphasis) Couleur de décoration
margin 2em Marge des diapositives
titlebackground (vide) Image de fond du titre

Options de couleur

Option Défaut Description
custompalette (vide) Palette personnalisée (6 couleurs hex)
maincolor (palette) Couleur principale
accentcolor (palette) Couleur d'accent
backgroundcolor (palette) Couleur de fond
blockcolor (palette) Couleur des blocs standards
examplecolor (palette) Couleur des blocs exemple
alertcolor (palette) Couleur des blocs d'alerte
remarkcolor (palette) Couleur des remarques
methodcolor (palette) Couleur des méthodes
codebackgroundcolor (vide) Couleur de fond du code
shadedblockopacity auto Opacité du style shaded (fond des versions 1.x)
soberblockopacity auto Opacité du style sober (fond des versions 1.x)
softblockopacity auto Opacité du style soft (fond des versions 1.x)
barblockopacity auto Opacité du style bar (fond des versions 1.x)

Options des polices et des titres

Option Défaut Description
serifface literata Police serif
sansface inter Police sans empattements
monoface plex-mono Police à chasse fixe
seriffaceoptions (vide) Options de la police serif
sansfaceoptions (vide) Options de la police sans
monofaceoptions (vide) Options de la police mono
mathface inter Police mathématique
mathfaceoptions (vide) Options de la police mathématique
headstyle sffamily Famille de police des titres
headshape normal Forme des titres
headweight bfseries Graisse des titres de diapositive
titleweight mdseries Graisse des grands titres
blocktitleweight bfseries Graisse des titres de blocs
titlesize Huge Taille du titre principal
frametitlesize normalsize Taille du titre de frame
sectiontitlesize huge Taille du titre de section
subtitlesize large Taille du sous-titre
footertextsize tiny Taille du texte du pied de page

Couleurs accessibles

Le thème définit des noms de couleurs utilisables dans tout le document :

Les trois couleurs ...background correspondent exactement au fond affiché à l'intérieur des blocs standards, des exemples et des alertes, et suivent le style de ces trois familles.

\textcolor{accent}{Texte en couleur d'accent}
\colorlet{maCustom}{blockcolor!50!background}