ci: autogen-banner #118
|
@ -3,16 +3,16 @@
|
|||
// https://brand.abb/portal/en/branding-principles/basic-brand-elements/color
|
||||
|
||||
// ABB branding colors
|
||||
#let ABB-RED = cmyk(0%, 100%, 95%, 0%)
|
||||
#let ABB-BLACK = cmyk(0%, 0%, 0%, 100%)
|
||||
#let ABB-GRAY-01 = cmyk(0%, 0%, 0%, 90%)
|
||||
#let ABB-GRAY-02 = cmyk(0%, 0%, 0%, 75%)
|
||||
#let ABB-GRAY-03 = cmyk(0%, 0%, 0%, 55%)
|
||||
#let ABB-GRAY-04 = cmyk(0%, 0%, 0%, 35%)
|
||||
#let ABB-GRAY-05 = cmyk(0%, 0%, 0%, 15%)
|
||||
#let ABB-GRAY-06 = cmyk(0%, 0%, 0%, 5%)
|
||||
#let ABB-WHITE = cmyk(0%, 0%, 0%, 0%)
|
||||
#let ABB-RED = rgb(255, 0, 13)
|
||||
#let ABB-BLACK = rgb(0, 0, 0)
|
||||
#let ABB-GRAY-01 = rgb(25, 25, 25)
|
||||
#let ABB-GRAY-02 = rgb(64, 64, 64)
|
||||
#let ABB-GRAY-03 = rgb(115, 115, 115)
|
||||
#let ABB-GRAY-04 = rgb(166, 166, 166)
|
||||
#let ABB-GRAY-05 = rgb(217, 217, 217)
|
||||
#let ABB-GRAY-06 = rgb(242, 242, 242)
|
||||
#let ABB-WHITE = rgb(255, 255, 255)
|
||||
// ABB branding functinal colors
|
||||
#let ABB-BLUE = cmyk(100%, 53%, 2%, 16%)
|
||||
#let ABB-GREEN = cmyk(91%, 4%, 100%, 25%)
|
||||
#let ABB-YELLOW = cmyk(0%, 9%, 100%, 0%)
|
||||
#let ABB-BLUE = rgb(0, 101, 210)
|
||||
#let ABB-GREEN = rgb(17, 184, 0)
|
||||
#let ABB-YELLOW = rgb(255, 232, 0)
|
||||
|
|
18
src/conf.typ
18
src/conf.typ
|
@ -25,22 +25,7 @@
|
|||
campus: "Eppelheim"
|
||||
),
|
||||
supervisor-signature: false,
|
||||
authors: (
|
||||
(
|
||||
name: "Sven Vogel",
|
||||
course: "TINF19IT1",
|
||||
company: "ABB AG",
|
||||
supervisor: "Benny Goodman",
|
||||
matriculation-number: 123456789
|
||||
),
|
||||
(
|
||||
name: "Kurt Jammer",
|
||||
course: "TINF24AI2",
|
||||
company: "Siemens",
|
||||
supervisor: "Henry Badman",
|
||||
matriculation-number: 478568763
|
||||
),
|
||||
),
|
||||
authors: ((),()),
|
||||
// information about thesis
|
||||
thesis: (
|
||||
title: "Unofficial ABB/DHBW Typst template",
|
||||
|
@ -102,6 +87,7 @@
|
|||
|
||||
if type(val) == array {
|
||||
// ignore checking arraay
|
||||
base.insert(key, update_val)
|
||||
} else if type(val) == dictionary and type(update_val) == dictionary {
|
||||
base.insert(key, deep-insert-checked(val, update_val))
|
||||
} else if val == none or type(val) == type(update_val) {
|
||||
|
|
|
@ -47,7 +47,7 @@
|
|||
if text.lang == "de" [
|
||||
handelt es sich _nicht_ um die fertige Fassung. Das Dokument kann Inhaltliche-, Grammatikalische- sowie Format-Fehler enthalten. Das Dokument ist im Rahmen der Aufgabenstellung von Seiten der #university.name nicht zur Bewertung freigegeben und ein anderer Verwendungszweck als eine Vorschau ist nicht gestattet.
|
||||
] else if text.lang == "en" [
|
||||
is not the final version. The document may contain errors in content, grammar and formatting. The document may not be released for evaluation to #university.name as part of the assignment, and any use other than a preview is not permitted.
|
||||
is not the final version. The document may contain errors in content, grammar and formatting. The document may not be released for evaluation to #config.university.name as part of the assignment, and any use other than a preview is not permitted.
|
||||
]
|
||||
}
|
||||
)
|
||||
|
|
|
@ -49,9 +49,17 @@
|
|||
// faculty
|
||||
#pad()[
|
||||
#if text.lang == "de" [
|
||||
aus dem Studiengang #config.university.program | #config.university.faculty
|
||||
aus dem Studiengang #config.university.program
|
||||
] else if text.lang == "en" [
|
||||
from the course of studies #config.university.program | #config.university.faculty
|
||||
from the course of studies #config.university.program
|
||||
] else [
|
||||
#context panic("no translation for language: ", text.lang)
|
||||
]
|
||||
|
||||
#if text.lang == "de" [
|
||||
an der Fakultät #config.university.faculty
|
||||
] else if text.lang == "en" [
|
||||
at the faculty of #config.university.faculty
|
||||
] else [
|
||||
#context panic("no translation for language: ", text.lang)
|
||||
]
|
||||
|
@ -68,14 +76,19 @@
|
|||
]
|
||||
#config.university.name
|
||||
#linebreak()
|
||||
#if text.lang == "de" [
|
||||
in
|
||||
] else if text.lang == "en" [
|
||||
in
|
||||
] else [
|
||||
#context panic("no translation for language: ", text.lang)
|
||||
]
|
||||
#config.university.campus
|
||||
]
|
||||
|
||||
#pad(top: 1em)[
|
||||
#pad(top: 1.5em)[
|
||||
#let names = ()
|
||||
#for author in config.authors {
|
||||
names.push(author.name)
|
||||
}
|
||||
|
||||
#if text.lang == "de" [
|
||||
von
|
||||
] else if text.lang == "en" [
|
||||
|
@ -83,70 +96,37 @@
|
|||
] else [
|
||||
#context panic("no translation for language: ", text.lang)
|
||||
]
|
||||
#set text(size: 16pt)
|
||||
#grid(columns: 1, row-gutter: 1em, ..names)
|
||||
|
||||
#v(1.5em)
|
||||
|
||||
#let rows = int(config.authors.len() / 3 + 0.5)
|
||||
|
||||
#for i in range(0, rows) {
|
||||
let cols = calc.min(config.authors.len() - i * 3, 3)
|
||||
|
||||
grid(columns: cols, column-gutter: 1.5em, ..config
|
||||
.authors
|
||||
.slice(i * 3, i * 3 + cols)
|
||||
.map(author => grid(
|
||||
columns: 1,
|
||||
row-gutter: 1em,
|
||||
text(size: 1.25em, author.name),
|
||||
text(size: 1em, author.company),
|
||||
text(size: 1em, author.contact),
|
||||
[
|
||||
#str(author.matriculation-number),
|
||||
#author.course
|
||||
],
|
||||
)))
|
||||
}
|
||||
]
|
||||
|
||||
#pad(top: 1em)[
|
||||
#set align(bottom)
|
||||
|
||||
#pad(top: 1.5em)[
|
||||
#thesis.timeframe
|
||||
]
|
||||
|
||||
#set align(bottom + left)
|
||||
|
||||
#if text.lang == "de" [
|
||||
#grid(
|
||||
columns: 2,
|
||||
column-gutter: 1cm,
|
||||
row-gutter: 0.5cm,
|
||||
align: top + left,
|
||||
stroke: none,
|
||||
[Matrikelnummer, Kurs:],
|
||||
par(
|
||||
leading: 0.5em,
|
||||
for author in config.authors {
|
||||
str(author.matriculation-number) + ", " + author.course
|
||||
linebreak()
|
||||
},
|
||||
),
|
||||
|
||||
[Betrieb, Betreuer:],
|
||||
par(
|
||||
leading: 0.5em,
|
||||
for author in config.authors {
|
||||
author.company + ", " + author.supervisor
|
||||
linebreak()
|
||||
},
|
||||
),
|
||||
)
|
||||
] else if text.lang == "en" [
|
||||
#grid(
|
||||
columns: 2,
|
||||
column-gutter: 1cm,
|
||||
row-gutter: 0.5cm,
|
||||
align: top + left,
|
||||
stroke: none,
|
||||
[Student ID, Course:],
|
||||
par(
|
||||
leading: 0.5em,
|
||||
for author in config.authors {
|
||||
str(author.matriculation-number) + ", " + author.course
|
||||
linebreak()
|
||||
},
|
||||
),
|
||||
|
||||
[Company, Supervisor:],
|
||||
par(
|
||||
leading: 0.5em,
|
||||
for author in config.authors {
|
||||
author.company + ", " + author.supervisor
|
||||
linebreak()
|
||||
},
|
||||
),
|
||||
)
|
||||
] else [
|
||||
#context panic("no translation for language: ", text.lang)
|
||||
]
|
||||
|
||||
#if config.supervisor-signature {
|
||||
align(
|
||||
bottom,
|
||||
|
|
|
@ -6,16 +6,23 @@
|
|||
lang: "de",
|
||||
region: "de",
|
||||
draft: false,
|
||||
author: (
|
||||
name: "Sven Vogel",
|
||||
semester: 4,
|
||||
program: "Informationtechnology",
|
||||
course: "TINF19IT1",
|
||||
faculty: "Technik",
|
||||
university: "DHBW Mannheim",
|
||||
company: "ABB AG",
|
||||
supervisor: "Benny Goodman",
|
||||
matriculation-number: 123456789,
|
||||
authors: (
|
||||
(
|
||||
name: "Sven Vogel",
|
||||
course: "TINF19IT1",
|
||||
company: none,
|
||||
supervisor: "Benny Goodman",
|
||||
matriculation-number: 123456789,
|
||||
contact: "sven.vogel123@web.de"
|
||||
),
|
||||
(
|
||||
name: "Sven Vogel",
|
||||
course: "TINF19IT1",
|
||||
company: "ABB AG",
|
||||
supervisor: "Benny Goodman",
|
||||
matriculation-number: 123456789,
|
||||
contact: "sven.vogel123@web.de"
|
||||
)
|
||||
),
|
||||
thesis: (
|
||||
title: "Unofficial ABB/DHBW Typst template",
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "dhbw-abb-typst-template"
|
||||
version = "0.5.4"
|
||||
version = "0.6.0"
|
||||
entrypoint = "src/template.typ"
|
||||
authors = ["Sven Vogel <sven.vogel1@de.abb.com>"]
|
||||
license = "MIT"
|
||||
|
|
Loading…
Reference in New Issue