Scrivere un documento più elaborato con Typst
Quando abbiamo aperto un nuovo documento di typst, cioè un file con l’estenzione .typ dobbiamo inserire il codice che definisce le istruzioni tipografiche del nostro documento.
Se vogliamo scrivere libri o dispense più elaborate con l'impaginazione come i libri, quindi con copertina e un indice generale del documento, qui vi mostro come setto i miei documenti più elaborati con Typst, potete decidere di conservare queste impostazioni tipografiche così come sono o quando avete preso confidenza con il programma modificarle secondo i vostri gusti personali.
Quindi ora scriviamo nel documento il seguente codice per impostare tipograficamente il documento. Inseriamo un gruppo di impostazioni tipografiche alla volta.
Inseriamo le impostazioni tipografiche della pagina:
// ──────────────────────────────────────────────────────────────
// IMPOSTAZIONI PAGINA
// ──────────────────────────────────────────────────────────────
#set page(
paper: "a4",
margin: (top: 3.6cm, bottom: 2.6cm, left: 2.6cm, right: 2.6cm),
numbering: "1",
number-align: center,
header: context {
let pn = counter(page).get().first()
if pn > 2 {
set text(size: 10pt, fill: luma(20))
grid(
columns: (1fr, auto),
align(left)[_Titolo intestazione_],
align(right)[Pag. #pn],
)
v(-0.4em)
line(length: 100%, stroke: 0.4pt + luma(20))
}
},
footer: context {
let pn = counter(page).get().first()
if pn > 2 {
line(length: 100%, stroke: 0.4pt + luma(20))
v(-0.3em)
}
},
)
Inseriamo le impostazioni tipografiche del testo:
// ──────────────────────────────────────────────────────────────
// IMPOSTAZIONI TESTO
// ──────────────────────────────────────────────────────────────
#set text(
font: ("Libertinus Serif"),
size: 12pt,
lang: "it",
region: "IT",
hyphenate: true,
)
#set par(
justify: true,
leading: 0.75em,
spacing: 1.15em,
)
Inseriamo le impostazioni tipografiche per lo stile dei titoli:
// ────────────────────────────────────────────────────────────── // STILE TITOLI // ────────────────────────────────────────────────────────────── // Livello 1 — Capitolo #show heading.where(level: 1): set align(center) #show heading.where(level: 1): set text(size: 25pt) #show heading.where(level: 1): it => [ #[]#pagebreak(weak: true) #it.body #set align(center) #v(0.8em) ] // Livello 2 — Sezione #show heading.where(level: 2): set text(size: 20pt) #show heading.where(level: 2): it => [ #it.body #v(0.5em) ] // Livello 3 — Sottosezione #show heading.where(level: 3): set text(size: 16pt) #show heading.where(level: 3): it => [ #it.body #v(0.3em) ]
Inseriamo le impostazioni tipografiche per lo stile dei link:
// ──────────────────────────────────────────────────────────────
// LINK
// ──────────────────────────────────────────────────────────────
#show link: it => {
set text(fill: blue)
underline(it)
}
Per scrivere il frontespizio con la copertina, il titolo del documento e il sottotitolo del documento inserire il seguente codice:
// ==============================================================
// FRONTESPIZIO
// ==============================================================
#page(
margin: 0pt,
header: none,
footer: none,
numbering: none,
)[
// Sfondo a gradiente
#place(
top + left,
block(
width: 100%,
height: 100%,
fill: gradient.linear(
rgb("#0d2137"),
rgb("#1a3a5c"),
angle: 150deg,
),
),
)
// Logo / titolo
#place(
center + horizon,
block(width: 88%)[
#align(center)[
#v(1.2fr)
// Titolo principale
#text(
fill: white,
size: 56pt,
weight: "bold",
font: ("Libertinus Serif"),
)[Titolo libro]
#v(0.4em)
// Sottotitolo
#text(fill: rgb("#aed6f1"), size: 22pt,
font: ("Libertinus Serif"),)[
Sottotitolo del libro
]
#v(3em)
// Autore del libro
#text(fill: rgb("#d8e2f2"), size: 13pt,
font: ("Libertinus Serif"),)[
#text(fill: white)[Autore del libro]
]
#v(1.8em)
// Descrizione
#text(fill: rgb("#d6eaf8"), size: 12.5pt, style: "italic")[]
#v(2.5em)
#h(0.5em)
#h(0.5em)
#h(0.5em)
#h(0.5em)
#h(0.5em)
#h(0.5em)
#v(1fr)
]
],
)
]
Ovviamente sostituiremo la scritta «Titolo libro» con il titolo del nostro documento e la scritta «Sottotitolo» con il sottotitolo del nostro documento. Potete cambiare il colore della copertina se ne preferite un altro.
Per inserire l’indice generale nel documento e la numerazione delle pagine inserire il seguente codice:
// ────────────────────────────────────────────────────────────── // NUMERAZIONE PAGINE E INDICE // ────────────────────────────────────────────────────────────── #set page(numbering: "1") #outline( title: [Indice #v(0.7em)], depth: 3, indent: auto, )
E’ buona abitudine mettere un commento nel documento che identifica l’inizio del documento, prima di scrivere il nostro primo capitolo. Quindi inserire il seguente codice:
// ============================================================== // INIZIO DOCUMENTO // ==============================================================
Ora possiamo iniziare a scrivere il nostro libro più elaborato.