horse/on-the-brink/template.typ

122 lines
2.0 KiB
Plaintext

#import "@preview/tablex:0.0.4": gridx, tablex, cellx
#let ppage(
title: "this is my title",
subtitle: "dontcha know",
date: 2023-08-08,
author: "dozens@tilde.team",
body
) = {
set document(
title: "#title",
author: "#author",
)
set page(
paper: "us-letter",
//fill: aqua,
margin: (
top: 5em,
bottom: 5em,
left: 3em,
right: 3em,
),
footer: [
#set text(8pt)
#align(
center,
[_Horses On The Brink!_ is CC-BY-SA by dozens\@tilde.team]
)
]
)
show par: set block(spacing: 0.65em)
set par(
first-line-indent: 1em,
justify: true,
)
set text(font: "Helvetica Neue")
show heading: it => block(
width: 100%,
fill: black,
inset: (x: 3pt, y: 5pt),
)[
#set text(
white,
font: (
"Nandaka Western",
),
stretch: 120%,
)
#it
]
{
set align(center)
set text(42pt)
block(
fill: black,
inset: 10pt,
width: 200%,
height: 80pt,
spacing: 0pt,
scale(70%, heading(title))
)
}
show link: underline
columns(2)[
#body
]
}
#let blockquote(c) = {
set text(
size: 16pt,
style: "italic",
fill: black.lighten(20%),
)
stack(
dir: ltr,
rect(
//fill: gray,
stroke: none,
height: 1%,
inset: (
top: 50pt,
left: 20pt,
),
align(
start + top,
image(
"horsemoji.png",
width: 30%,
height: 30%,
fit: "contain"
),
)
),
rect(
stroke: none,
inset: (left: 12pt, top: 6pt, bottom: 6pt),
width: 85%,
move(
dx: -100pt,
dy: -5pt,
rect(
stroke: (left: gray.lighten(80%)),
width: 100% + 46pt,
inset: (
top: 8pt,
bottom: 8pt,
left: 12pt,
),
radius: 5pt,
fill: rgb(255, 255, 255, 80%),
[#c]
)
)
)
)
}