Skip to main content
Version: 0.4.1

Aqua Theme

image

This theme is created by @pride7, featuring beautiful backgrounds made with Typst's visualization capabilities.

Initialization

You can initialize it with the following code:

#import "@preview/touying:0.4.1": *

#let s = themes.aqua.register(aspect-ratio: "16-9", lang: "en")
#let s = (s.methods.info)(
self: s,
title: [Title],
subtitle: [Subtitle],
author: [Authors],
date: datetime.today(),
institution: [Institution],
)
#let (init, slides, touying-outline, alert, speaker-note) = utils.methods(s)
#show: init

#show strong: alert

#let (slide, empty-slide, title-slide, outline-slide, focus-slide) = utils.slides(s)
#show: slides

Where register takes parameters:

  • aspect-ratio: The aspect ratio of slides, either "16-9" or "4-3", default is "16-9".
  • footer: Content shown on the right side of the footer, default is states.slide-counter.display().
  • lang: Language configuration, currently supports "en" and "zh", default is "en".

Aqua theme also provides an #alert[..] function, which you can utilize with #show strong: alert using *alert text* syntax.

Color Themes

Aqua by default uses:

#let s = (s.methods.colors)(
self: s,
primary: rgb("#003F88"),
primary-light: rgb("#2159A5"),
primary-lightest: rgb("#F2F4F8"),

color themes, which you can modify by #let s = (s.methods.colors)(self: s, ..).

Slide Function Family

Aqua theme offers a series of custom slide functions:

#title-slide(..args)

title-slide will read information from self.info for display.


#let outline-slide(self: none, enum-args: (:), leading: 50pt)

Display an outline slide.


#slide(
repeat: auto,
setting: body => body,
composer: utils.side-by-side,
section: none,
subsection: none,
// Aqua theme
title: auto,
)[
...
]

A default ordinary slide function with title and footer, where title defaults to the current section title.


#focus-slide[
...
]

Used to draw the audience's attention. The background color is self.colors.primary.


#new-section-slide(title)

Start a new section with the given title.

slides Function

The slides function has parameters:

  • title-slide: Default is true.
  • outline-slide: Default is true.
  • slide-level: Default is 1.

They can be set via #show: slides.with(..).

PS: The outline title can be modified via #(s.outline-title = [Outline]).

Additionally, you can disable the automatic inclusion of new-section-slide functionality by #(s.methods.touying-new-section-slide = none).

#import "@preview/touying:0.4.1": *

#let s = themes.aqua.register(aspect-ratio: "16-9", lang: "en")
#let s = (s.methods.info)(
self: s,
title: [Title],
subtitle: [Subtitle],
author: [Authors],
date: datetime.today(),
institution: [Institution],
)
#let (init, slides, touying-outline, alert, speaker-note) = utils.methods(s)
#show: init

#show strong: alert

#let (slide, empty-slide, title-slide, outline-slide, focus-slide) = utils.slides(s)
#show: slides

= Title

== First Slide

Hello, Touying!

#pause

Hello, Typst!

image

Example

#import "@preview/touying:0.4.1": *

#let s = themes.aqua.register(aspect-ratio: "16-9", lang: "en")
#let s = (s.methods.info)(
self: s,
title: [Title],
subtitle: [Subtitle],
author: [Authors],
date: datetime.today(),
institution: [Institution],
)
#let (init, slides, touying-outline, alert, speaker-note) = utils.methods(s)
#show: init

#show strong: alert

#let (slide, empty-slide, title-slide, outline-slide, focus-slide) = utils.slides(s)
#show: slides

= The Section

== Slide Title

#slide[
#lorem(40)
]

#focus-slide[
Another variant with primary color in background...
]

== Summary

#align(center + horizon)[
#set text(size: 3em, weight: "bold", s.colors.primary)
THANKS FOR ALL
]