diff --git a/1.0.1/src/assets/unigrazlogo-white-border.svg b/1.0.1/src/assets/unigrazlogo-white-border.svg
new file mode 100644
index 0000000..bd8dd2e
--- /dev/null
+++ b/1.0.1/src/assets/unigrazlogo-white-border.svg
@@ -0,0 +1,54 @@
+
+
+
+
+
+
diff --git a/1.0.1/src/assets/unigrazlogo.svg b/1.0.1/src/assets/unigrazlogo.svg
deleted file mode 100644
index e453d89..0000000
--- a/1.0.1/src/assets/unigrazlogo.svg
+++ /dev/null
@@ -1,11 +0,0 @@
-
-
-
-
-
\ No newline at end of file
diff --git a/1.0.1/src/lib.typ b/1.0.1/src/lib.typ
index b6bd1d4..1922777 100644
--- a/1.0.1/src/lib.typ
+++ b/1.0.1/src/lib.typ
@@ -142,7 +142,7 @@
#let title-slide(..args) = touying-slide-wrapper(self => {
let info = self.info + args.named()
let body = {
- let footer-isec = [
+ let footer-kfu = [
#set text(size: 13.3pt, weight: "medium")
#let circle-icon = [
@@ -158,25 +158,25 @@
#box(circle-icon) #h(0.1cm) #self.store.institute
]
- set page(footer: footer-isec, header: none)
+ set page(footer: footer-kfu, header: none)
set block(below: 0pt, above: 0pt)
+ place(center + horizon, dx: -15em, [
+ #circle(stroke: self.colors.primary + 13em, radius: 32em)
+ ])
+
// Top-right icon + text
place(top + right, dy: -1.9cm, dx: 0.78cm, [
#self.store.logo
])
- place(center + horizon, dx: -15em, [
- #circle(stroke: self.colors.primary + 5em, radius: 25em)
- ])
-
v(0.8cm)
block(width: 83%)[
#let title = text(size: 40.5pt, weight: "bold")[#info.at(
- "title",
- default: "",
- )]
+ "title",
+ default: "",
+ )]
#move(dx: 0.04em)[
#grid(
@@ -225,7 +225,7 @@
if (
self.info.at("download-qr", default: none) != none
- and self.info.at("download-qr", default: none) != ""
+ and self.info.at("download-qr", default: none) != ""
) {
place(bottom + right)[
#align(center + horizon)[
@@ -352,7 +352,7 @@
/// Example:
///
/// ```typst
-/// #show: definitely-not-isec-theme.with(
+/// #show: definitely-not-kfu-theme.with(
/// aspect-ratio: "16-9",
/// slide-alignment: top,
/// config-info(
@@ -383,7 +383,7 @@
/// - config-common (dict):
/// - handout (bool): Boolean for handout mode
/// - config-colors (dict): Colors for the presentation
-/// - ... see definition of `#definitely-not-isec-theme`
+/// - ... see definition of `#definitely-not-kfu-theme`
#let definitely-not-kfu-theme(
aspect-ratio: "16-9",
header: utils.display-current-heading(level: 1),
@@ -436,7 +436,6 @@
kfu: rgb("FED501"),
primary: rgb("FED501"),
footer: rgb("808080"),
- isec: rgb("272733"),
foot: rgb("e1e1e1"),
web: rgb("0c5a77"),
csbme: rgb("19b4e3"),
@@ -465,23 +464,6 @@
colD: rgb("285f82"),
colE: rgb("78b473"),
colF: rgb("e59352"),
- tugred: rgb("e4154b"),
- tuggreen: rgb("78b473"),
- tugblue: rgb("285f82"),
- tugyellow: rgb("e59352"),
- tugcyan: rgb("19b4e3"),
- tugpurple: rgb("7d219e"),
- tugviolet: rgb("5e60a8"),
- tugmagenta: rgb("7d219e"),
- tugturquoise: rgb("0a98a2"),
- tugbrown: rgb("68242c"),
- tugblack: rgb("0f0f0f"),
- tugwhite: rgb("ffffff"),
- tuggray: rgb("a5a5a5"),
- tuggrey: rgb("a5a5a5"),
- tugdark: rgb("3b5a70"),
- tugmid: rgb("5191c1"),
- tuglite: rgb("eeece1"),
main: rgb("e4154b"),
emph: rgb("285f82"),
standout: rgb("245b78"),
@@ -489,226 +471,188 @@
config-methods(
cover: (self: none, body) => hide(body),
init: (
- self: none,
- body,
- ) => {
- // TUGraz uses Source Sans Pro, but its a licensed Adobe font
- set text(size: 20pt, lang: "en", region: "US", font: font)
- show emph: it => { text(self.colors.primary, it.body) }
- show cite: it => { text(self.colors.primary, it) }
- show strong: it => { text(weight: "bold", it.body) }
+ self: none,
+ body,
+ ) => {
+ set text(size: 20pt, lang: "en", region: "US", font: font)
+ show emph: it => { text(self.colors.primary, it.body) }
+ show cite: it => { text(self.colors.primary, it) }
+ show strong: it => { text(weight: "bold", it.body) }
- // Bibliography
- set bibliography(title: none, style: "ieee")
- set cite(style: "alphanumeric")
- show bibliography: set par(spacing: 0.4cm)
- show bibliography: set grid(align: top + left)
- show bibliography: set text(17pt)
- show bibliography: t => {
- show grid.cell.where(x: 0): set text(fill: self.colors.primary)
- show grid.cell.where(x: 0): set align(top + left)
- show link: set text(fill: gray)
- t
+ // Bibliography
+ set bibliography(title: none, style: "ieee")
+ set cite(style: "alphanumeric")
+ show bibliography: set par(spacing: 0.4cm)
+ show bibliography: set grid(align: top + left)
+ show bibliography: set text(17pt)
+ show bibliography: t => {
+ show grid.cell.where(x: 0): set text(fill: self.colors.primary)
+ show grid.cell.where(x: 0): set align(top + left)
+ show link: set text(fill: gray)
+ t
+ }
+
+ // Lists & Enums
+ set list(
+ marker: (
+ (move(dx: 0.15cm, dy: 0.1cm, circle(radius: 0.2em, stroke: self.colors.primary + 2pt, fill: self.colors.primary))),
+ (move(dy: 0.2cm, circle(width: 0.2em, fill: black))),
+ (move(dy: 0.2cm, circle(width: 0.2em, fill: gray))),
+ ),
+ body-indent: 1.2em,
+ )
+ set enum(
+ numbering: n => {
+ circle(stroke: self.colors.primary + 2pt, radius: 0.3cm)[
+ #align(center + horizon)[ #text(size: 12pt, fill: black)[#n] ]
+ ]
+ },
+ body-indent: 0.6cm
+ )
+
+ // Code blocks
+ show: codly-init.with()
+ show raw.where(block: true): set text(size: 13pt)
+
+ // Hotfixes, the messy part
+
+ // https://github.com/touying-typ/touying/issues/136
+ set par(spacing: 0.65em)
+
+ body
+ }),
+ ..args,
+ )
+
+ body
+ }
+
+ // -----------------------------------------------------------------------------
+ // Macros
+ // -----------------------------------------------------------------------------
+
+ /// Macro for a pdfpc note
+ ///
+ /// Example:
+ ///
+ /// ```typst
+ /// #note("This will show on pdfpc speaker notes")
+ /// ```
+ ///
+ /// - text (str): Note for pdfpc
+ ///
+ /// -> content
+ #let note(text) = [
+ #pdfpc.speaker-note(text)
+ ]
+
+ /// Quote block for phrases. Has a color.primary rectangle in the left
+ ///
+ /// Example:
+ ///
+ /// ```typst
+ /// #quote-block[
+ /// #lorem(10)
+ /// ]
+ /// ```
+ ///
+ /// - top-pad (length): Extra height of the quote colored block
+ /// - color (color): Color of the quote block
+ /// - spacing (length): Spacing after the `#quote-block`
+ ///
+ /// -> content
+ #let quote-block(
+ top-pad: 0.55cm,
+ color: none,
+ spacing: 0.3cm,
+ body,
+ ) = [
+ #touying-fn-wrapper((self: none) => [
+ // Grid with the design
+ #let g(s: 0cm, body) = [
+ #grid(
+ columns: (0.195cm, auto),
+ column-gutter: 0.7cm,
+ row-gutter: 0cm,
+ [
+ #rect(
+ fill: if color == none { self.colors.primary } else { color },
+ height: s + top-pad,
+ )
+ ],
+ align(horizon, body),
+ )
+ ]
+
+ // We compute its "auto" heigth and then print it with the correct height
+ #layout(size => {
+ let (height,) = measure(width: size.width, g(body))
+ g(s: height, body)
+ })
+
+ #v(spacing)
+ ])
+ ]
+
+ /// Block with title and content
+ ///
+ /// Example:
+ ///
+ /// ```typst
+ /// #color-block(title: [Advantages])[
+ /// - A
+ /// - B
+ /// - C
+ /// ]
+ /// ```
+ ///
+ /// - title (content): Title for the color block
+ /// - icon (str): Icon to show at the left of the title (Tableau Icons) https://tabler.io/icons
+ /// - spacing (length): Spacing before and after the color block
+ /// - color (color): Color for the title block
+ /// - color-body (color): Color for the background of the body
+ ///
+ /// -> content
+ #let color-block(
+ title: [],
+ icon: none,
+ spacing: 0.78em,
+ color: none,
+ color-body: none,
+ body
+ ) = [
+ #import "@preview/tableau-icons:0.331.0": *
+ #touying-fn-wrapper((self: none) => [
+ #show emph: it => {
+ text(weight: "medium", fill: self.colors.primary, it.body)
}
- // Lists & Enums
- set list(
- marker: (
- (move(dx: 0.15cm, dy: 0.1cm, circle(radius: 0.2em, stroke: self.colors.primary + 2pt, fill: self.colors.primary))),
- (move(dy: 0.2cm, circle(width: 0.2em, fill: black))),
- (move(dy: 0.2cm, circle(width: 0.2em, fill: gray))),
+ #showybox(
+ title-style: (
+ color: white,
+ sep-thickness: 0pt,
),
- body-indent: 1.2em,
- )
- set enum(
- numbering: n => {
- circle(stroke: self.colors.primary + 2pt, radius: 0.3cm)[
- #align(center + horizon)[ #text(size: 12pt, fill: black)[#n] ]
+ frame: (
+ //inset: 0.4em,
+ radius: 0pt,
+ thickness: 0pt,
+ border-color: if color == none { self.colors.primary } else { color },
+ title-color: if color == none { self.colors.primary } else { color },
+ body-color: if color-body == none { self.colors.lite } else { color-body },
+ inset: (x: 0.55em, y: 0.65em),
+ ),
+ above: spacing,
+ below: spacing,
+ title: if icon == none {
+ align(horizon)[#strong(title)]
+ } else {
+ align(horizon)[
+ #draw-icon(icon, height: 1.2em, baseline: 20%, fill: white) #h(0.2cm) #strong[#title]
]
},
- body-indent: 0.6cm
- )
-
- // Code blocks
- show: codly-init.with()
- show raw.where(block: true): set text(size: 13pt)
-
- // Hotfixes, the messy part
-
- // https://github.com/touying-typ/touying/issues/136
- set par(spacing: 0.65em)
-
- body
- }),
- ..args,
- )
-
- body
-}
-
-// -----------------------------------------------------------------------------
-// Macros
-// -----------------------------------------------------------------------------
-
-/// Macro for a pdfpc note
-///
-/// Example:
-///
-/// ```typst
-/// #note("This will show on pdfpc speaker notes")
-/// ```
-///
-/// - text (str): Note for pdfpc
-///
-/// -> content
-#let note(text) = [
- #pdfpc.speaker-note(text)
-]
-
-/// Quote block for phrases. Has a color.primary rectangle in the left
-///
-/// Example:
-///
-/// ```typst
-/// #quote-block[
-/// #lorem(10)
-/// ]
-/// ```
-///
-/// - top-pad (length): Extra height of the quote colored block
-/// - color (color): Color of the quote block
-/// - spacing (length): Spacing after the `#quote-block`
-///
-/// -> content
-#let quote-block(
- top-pad: 0.55cm,
- color: none,
- spacing: 0.3cm,
- body,
-) = [
- #touying-fn-wrapper((self: none) => [
- // Grid with the design
- #let g(s: 0cm, body) = [
- #grid(
- columns: (0.195cm, auto),
- column-gutter: 0.7cm,
- row-gutter: 0cm,
- [
- #rect(
- fill: if color == none { self.colors.primary } else { color },
- height: s + top-pad,
- )
- ],
- align(horizon, body),
- )
- ]
-
- // We compute its "auto" heigth and then print it with the correct height
- #layout(size => {
- let (height,) = measure(width: size.width, g(body))
- g(s: height, body)
- })
-
- #v(spacing)
- ])
-]
-
-/// Block with title and content
-///
-/// Example:
-///
-/// ```typst
-/// #color-block(title: [Advantages])[
-/// - A
-/// - B
-/// - C
-/// ]
-/// ```
-///
-/// - title (content): Title for the color block
-/// - icon (str): Icon to show at the left of the title (Tableau Icons) https://tabler.io/icons
-/// - spacing (length): Spacing before and after the color block
-/// - color (color): Color for the title block
-/// - color-body (color): Color for the background of the body
-///
-/// -> content
-#let color-block(
- title: [],
- icon: none,
- spacing: 0.78em,
- color: none,
- color-body: none,
- body
-) = [
- #import "@preview/tableau-icons:0.331.0": *
- #touying-fn-wrapper((self: none) => [
- #show emph: it => {
- text(weight: "medium", fill: self.colors.primary, it.body)
- }
-
- #showybox(
- title-style: (
- color: white,
- sep-thickness: 0pt,
- ),
- frame: (
- //inset: 0.4em,
- radius: 0pt,
- thickness: 0pt,
- border-color: if color == none { self.colors.primary } else { color },
- title-color: if color == none { self.colors.primary } else { color },
- body-color: if color-body == none { self.colors.lite } else { color-body },
- inset: (x: 0.55em, y: 0.65em),
- ),
- above: spacing,
- below: spacing,
- title: if icon == none {
- align(horizon)[#strong(title)]
- } else {
- align(horizon)[
- #draw-icon(icon, height: 1.2em, baseline: 20%, fill: white) #h(0.2cm) #strong[#title]
- ]
- },
- body,
- )
- ])
-]
-
-/// Showcase the colors of the slide
-///
-/// Example:
-///
-/// ```typst
-/// #showcase-colors
-/// ```
-///
-/// -> content
-#let showcase-colors = [
- #touying-fn-wrapper((self: none) => [
- #set rect(width: 7.4cm, height: 1.5cm)
- #set text(fill: white)
- #set align(center)
- #grid(columns: 3, rows: 6, column-gutter: 1.8cm, row-gutter: 0.05cm, align: left,
- rect(fill: self.colors.isec)[isec],
- rect(fill: self.colors.kfu)[tug = main],
- rect(fill: self.colors.colA)[colA = tugred],
- rect(fill: self.colors.csbme)[csbme = tugcyan],
- rect(fill: self.colors.fore)[fore],
- rect(fill: self.colors.colB)[colB = tugmid],
- rect(fill: self.colors.crypto)[crypto],
- rect(fill: self.colors.back)[#text(fill: black)[back]],
- rect(fill: self.colors.colC)[colC = tuggray],
- rect(fill: self.colors.system)[system],
- rect(fill: self.colors.foot)[#text(fill: black)[foot]],
- rect(fill: self.colors.colD)[colD = tugblue],
- rect(fill: self.colors.formal)[formal],
- rect(fill: self.colors.emph)[emph],
- rect(fill: self.colors.colE)[colE = tuggreen],
- rect(fill: self.colors.applied)[applied = tugpurple],
- rect(fill: self.colors.lite)[#text(fill: black)[lite]],
- rect(fill: self.colors.colF)[colF = tugyellow],
+ body,
)
])
-]
+ ]
//vim:tabstop=2 softtabstop=2 shiftwidth=2 noexpandtab colorcolumn=81
diff --git a/1.0.1/src/logos.typ b/1.0.1/src/logos.typ
index cb02504..a2aa69d 100644
--- a/1.0.1/src/logos.typ
+++ b/1.0.1/src/logos.typ
@@ -16,6 +16,6 @@
#set align(right)
#set text(size: 12pt, tracking: 3.6pt)
- #image("assets/unigrazlogo.svg", width: 4.1cm)
+ #image("assets/unigrazlogo-white-border.svg", width: 4.1cm)
]