Digital-Printing

April 27, 2026 · View on GitHub

A Claude Code plugin with skills for preparing PDFs and documents for digital printing.

The plugin covers the full pre-print pipeline: profiling a PDF, fixing the obscure problems that bite on office printers (non-embedded fonts, live transparency, oversized images, mixed color spaces), preparing the layout (resize, bind, strip footers, add cover pages, watermarks, branded footers), bundling files into a print job folder with a formal order document, and shipping it to a digital printer by email or Google Drive share.

Scope: v1 is documents (PDFs) only. Skills for image and banner prep (JPEG/TIFF/canvas-size/print-bleed for posters, etc.) will be added later.

Skills

Page-level transforms

SkillPurpose
resize-pageRescale page size — Letter ↔ A4, A5 ↔ A4, custom dimensions
color-to-grayscaleConvert color PDF to grayscale for monochrome printing
remove-pagesDrop specified pages, ranges, or auto-detected blanks
strip-footers-and-page-numbersWhiteout or text-aware footer removal
optimize-for-bindingAdd gutter; mirror margins for duplex
add-cover-pageGenerate matching-size cover with title and prepend

Overlays

SkillPurpose
add-watermark45° diagonal text watermark (DRAFT, PRIVATE, etc.) at low opacity
burn-in-footerPermanent footer label (CLIENT CONFIDENTIAL, EMBARGOED UNTIL, etc.) with PNG preview verification

Pre-flight & quality fixes

SkillPurpose
verify-bleed-safeRead-only check: does any content extend into the unprintable margin?
add-bleedAdd 3mm bleed for commercial print shops that trim
embed-fontsForce-embed all fonts (fixes the most common print-mismatch bug)
flatten-transparencyEliminate live transparency (banding/color shifts on cheap printers)
downsample-imagesCap embedded images at 300 DPI; reduces file size and printer memory load
normalize-color-profileStandardize on sRGB (office) or CMYK FOGRA39 (print shop)

Metadata

SkillPurpose
strip-metadataWipe author, title, producer, comments, XMP
write-metadataSet title, author, subject, keywords

Job packaging & sharing

SkillPurpose
create-job-folderBundle one or more verified PDFs into a single job folder with a manifest
create-print-orderGenerate a formal printer-facing order (PDF + JSON) — copies, color, paper, binding, finishing, contact info
zip-job-folderArchive the folder for transmission
upload-to-printing-folderMove a finished PDF into the user's printing folder, organized by date or printer per saved preference
share-job-folderSend the job to a printer or recipient via email (zip attached) and/or Google Drive share link

Agent

AgentPurpose
print-prep-orchestratorProfiles a PDF (fonts, images, transparency, color, bleed safety, metadata) and orchestrates the right combination of atomic skills to make it print-ready, with a confirm-before-execute plan

Typical workflows

One-shot prep, then upload:

Hand a PDF to the orchestrator → it profiles & produces a print-ready output → upload-to-printing-folder

Build a multi-file job for a print shop:

For each file: run orchestrator → verify-bleed-safe
Then: create-job-folder → create-print-order → zip-job-folder → share-job-folder

Quick fix for a misbehaving PDF:

embed-fonts → flatten-transparency → downsample-images

Configuration

The plugin keeps small config (printing folder location, subfolder strategy, contact info, printer contacts) at:

$CLAUDE_USER_DATA/digital-printing/config.json

with the standard fallback ${XDG_DATA_HOME:-$HOME/.local/share}/claude-plugins/digital-printing/config.json.

User-owned data — the printing folder itself, job folders — lives wherever the user chose during onboarding (typically ~/Documents/Printing/ or a Google Drive folder). The plugin only stores the pointer in its config.

The plugin never writes to its own install directory under ~/.claude/plugins/, which is overwritten on plugin updates.

Tooling assumptions

The skills assume these standard CLI tools are available. Skills will check and prompt to install if missing:

  • ghostscript (gs) — most heavy lifting (resize, grayscale, embed, flatten, downsample, color profile)
  • qpdf — page selection, overlays, linearize
  • poppler-utils (pdfinfo, pdffonts, pdfimages, pdftotext) — probing
  • mupdf-tools (mutool) — alternative geometry probe, transparency detection
  • exiftool — metadata read/write
  • pdfjam (from texlive-extra-utils) — gutter/binding offsets, bleed
  • python3 with reportlab — overlay PDF generation for watermarks/footers
  • typst (optional) — clean cover pages and order documents
  • zip

Installation

claude plugins install digital-printing@danielrosehill

Then restart Claude Code.

License

MIT