PDF Creator (pdf-creator)
Turns markdown into polished PDFs with CJK-safe fonts, selectable themes, and a mandatory page-by-page visual check.
Docs & OfficeIntermediate★ 1,323⑂ 212AI score 9/10Last updated: Aug 8, 2026
What it does
Converts markdown files into print- or phone-ready PDFs, handling the details that manual pandoc/Chrome pipelines silently get wrong:
- Theme system:
default(formal A4),warm-terra(training/course material),mobile(148mm page, large type for phone reading and chat sharing), pluscjk-autoandwarm-terra-menuvariants - Content-aware backend: CJK text routes to Chrome (avoids the weasyprint OpenType subsetting bug that blanks characters in macOS Preview / Adobe Reader); plain Latin text uses weasyprint for speed
- Chrome header/footer suppression: no more filename, date, or URL printed on every page
- CJK typography layers: fixed table layout, no mid-character breaks, plus a post-render lint that flags orphan characters and broken bracket pairs
- Mandatory visual self-check: renders each page to PNG in a temp folder so the agent can read and compare against the markdown source
- Batch mode:
batch_convert.pyapplies one theme across many files
Who it's for
- Anyone who drafts contracts, reports, or proposals in markdown but ships PDFs
- Trainers who need both an A4 handout and a phone-friendly version of the same deck
- Teams working with Chinese/Japanese/Korean text who keep hitting tofu boxes and squeezed table columns
- Doc maintainers converting whole folders of markdown into consistently styled PDFs
Examples
- Formal contract: "Convert contract.md to a clean A4 PDF" →
defaulttheme, then inspect the generated page PNGs for table overflow - Two audiences: "Give me a printable and a phone version of the workshop outline" → run once with
warm-terra, once withmobile - Bulk export:
batch_convert.py *.md --theme warm-terra --output-dir ./pdfs --no-previewfor an entire docs directory
· · · Install guide · · ·
Install in the Claude app (no terminal)
- Download the ZIP with the button below.
- In Claude, open Settings → Capabilities and turn on 'Code execution and file creation'. (one time)
- Go to Customize → Skills → + → 'Upload a skill' and upload the ZIP.
Install in Claude Code
Let Claude do it — paste this into Claude Code
Install the skill I found on Claude Skill Mart. Copy the daymade-docs/pdf-creator folder from the GitHub repo daymade/claude-code-skills into my ~/.claude/skills/pdf-creator/. When it's done, tell me in one line what this skill can do.
Install with a command instead
git clone https://github.com/daymade/claude-code-skills.git && mkdir -p ~/.claude/skills && cp -r claude-code-skills/daymade-docs/pdf-creator ~/.claude/skills/⚠ This is a third-party skill. Check the source repository before installing.
- Install prerequisites: Python 3 and Google Chrome. On macOS run
brew install popplerforpdftoppm(used for page previews);brew install pandocis also recommended. - Install uv (recommended):
curl -LsSf https://astral.sh/uv/install.sh | sh— the skill's commands useuv run --with weasyprint. Without uv, runpip install weasyprintinstead. - Clone the repo:
git clone https://github.com/daymade/claude-code-skills.git - Copy the skill:
mkdir -p ~/.claude/skills && cp -r claude-code-skills/daymade-docs/pdf-creator ~/.claude/skills/ - Verify: restart Claude Code and ask "use the pdf-creator skill to turn this markdown into a PDF".
- List themes:
python ~/.claude/skills/pdf-creator/scripts/md_to_pdf.py --list-themes dummy.md - If glyphs look wrong: install the referenced CJK fonts, force
--backend chrome, or copy a file inthemes/and swap the font-family for fonts available on your OS to create your own theme.
View source on GitHub ↗License: MIT