docs-pdflisted
Install: claude install-skill meshcode-ai/skills
# PDF Production
PDF is a *destination format* — everything is frozen, so every decision (page size, fonts, breaks) must be right before export. Route first, design second.
## Route selection (decide before building anything)
- **Screen report / one-pager / ebook** → HTML + CSS → headless-Chrome/weasyprint print. Best layout control per page, easy iteration.
- **Text-heavy formal doc with equations/long tables** → LaTeX or pandoc→PDF. Best typographic defaults, worst iteration loop.
- **Already a .docx that must stay identical** → export from the office suite, don't rebuild.
- **Form/fillable** → build interactive PDF directly (AcroForm), don't rasterize.
## Layout rules
- Page setup first: size (A4 vs Letter — pick the reader's convention), orientation, margins ≥ 15mm; print adds 3mm bleed only when the printer asks.
- Running header (short title) + footer (page x of y) from page 2; cover page unnumbered.
- Never split: a table across pages without a repeated header row, a heading from its first paragraph, a figure from its caption.
- Type: body ≥ 10.5pt/1.5 for screen, ≥ 10pt for print; measure 60–75 chars; hyphenation off for CJK-heavy text.
## The three silent failures (always check)
1. **Fonts not embedded** — recipient sees substituted type and reflowed layout. Verify embedding, not just "font looks fine here".
2. **Rasterized text** — image-based export breaks search, copy, and accessibility. If it must be scanned, add an OCR text layer.
3. **File bloat** — unoptim