document!() { /* proc-macro */ }Expand description
Creates a Document with embedded templates, fonts, and packages.
§Usage
ⓘ
// Generate PDF
let pdf = typst_bake::document!("main.typ").to_pdf()?;
// Generate SVG (one per page)
let svgs = typst_bake::document!("main.typ").to_svg()?;
// Generate PNG at 144 DPI (Retina)
let pngs = typst_bake::document!("main.typ").to_png(144.0)?;§Configuration
Add to your Cargo.toml:
[package.metadata.typst-bake]
template-dir = "./templates"
fonts-dir = "./fonts"§What Gets Embedded
- Templates: All files in
template-dirare embedded and accessible from.typfiles - Fonts: Only supported font formats (TTF, OTF, TTC) are embedded. At least one font is required; without fonts, Typst produces invisible text
- Packages: Using packages requires no manual setup. Just use
#import "@preview/..."as you normally would in Typst. The macro scans for package imports and recursively resolves all dependencies at compile time