summaryrefslogtreecommitdiff
path: root/main.typ
blob: 55afd6edbbf562a00be5ce3c9aab7c18e79824a5 (plain)
#set text(
  font: "Gentium Book",
  size: 12pt,
  lang: "en",
  region: "us",
  script: "latn",
)
#set par(
  leading: 0.5em,
  spacing: 1em,
  linebreaks: "optimized",
)
#set page(
  width: 4.5in,
  height: 5.5in,
  margin: (x: 0.5in, y: 0.75in),
)
#set document(
  title: "The Lightened Black",
  author: "Mica White",
  description: "A story of a sleepless night alone"
)

#let black = cmyk(0%, 0%, 0%, 100%)
#let white = cmyk(0%, 0%, 0%, 0%)
#let page-white(body) = [
  #set page(fill: white)
  #set text(fill: black)
  #body
]
#let page-black(body) = [
  #set page(fill: black)
  #set text(fill: white)
  #body
]
#let page-red(body) = [
  #set page(fill: cmyk(0%, 40%, 40%, 0%))
  #set text(fill: black)
  #body
]

#let eyes(name) = pad(
  top: 0.25in,
  bottom: 0.25in,
  align(center, image("eye-" + name + ".svg", width: 50%))
)

#let titlepage = {
  counter(page).update(0)
  context page(
    margin: ( top: 25% ),
    numbering: none,
    fill: black, //gradient.radial(cmyk(0%, 0%, 0%, 75%), black),
    align(center)[
      #show: set text(fill: white, font: "Amita")
      #align(end, image("title.svg", width: 100%, alt: "The Lightened Black"))
      #document.author.map(
        (author) => par(text(size: 1.15em, author))
      ).join()
    ]
  )
}
#let copyrightpage(content) = {
  counter(page).update(0)
  page(
    numbering: none,
    align(center, content)
  )
}

#show: page-white

#copyrightpage[
Copyright #sym.copyright 2026 by Mica White

#linebreak()

Any resemblance to actual persons or events would be very disappointing.

#linebreak()

First edition
]
#titlepage

#let left() = {
  let current = counter(page).get()
  calc.odd(current.first())
}
#set page(
  header: context {
    align(center, text(
      size: 0.9em,
      if left() {
        "The Lightened Black"
      } else {
        "Mica White"
      }
    ))
  },
  footer: context {
    align(
      if left() {start} else {end},
      text(
        size: 0.9em,
        [#counter(page).get().first()]
      ),
    )
  },
)

#eyes("open")
#lorem(50)
#show: page-black
#eyes("closed")
#lorem(50)
#show: page-white
#eyes("open-tears")
#lorem(50)
#show: page-red
#align(center, image("eye-bloody.svg"))
#lorem(50)