Why Ctrl+P does not work
The n8n canvas is a virtualised pan-and-zoom surface: it draws the part of the workflow you are looking at and nothing else. A print job asks the page for its full layout, and the canvas has no full layout to give — so you get the viewport, scaled onto a sheet of A4, usually with most of the page blank.
Rendering from the workflow JSON avoids the question. The renderer knows every node's coordinates, so it can size the page to the workflow's bounding box before drawing anything.
Exporting to PDF
Drop the workflow onto pixtex.dev, style it, and pick pdf at the export step. You get a single page whose dimensions match the rendered image, so nothing is cropped and nothing is letterboxed.
npx pixtex render workflow.json --format pdf --scale 4 -o workflow.pdf
# or over HTTP
curl -X POST https://api.pixtex.dev/v1/render \
-H "Authorization: Bearer $PIXTEX_KEY" \
-H "Content-Type: application/json" \
--data '{"workflow": <workflow.json>, "options": {"format": "pdf", "scale": 4}}' \
-o workflow.pdfWhat you should know about it: the page embeds the rendered raster image at the scale you chose. It prints exactly as it looks and it is the right artefact for a signed-off deliverable, but you cannot select the node names as text or edit it in a PDF editor. For a client handover that is usually a feature — see documenting a workflow for a client.
Exporting to SVG
SVG is the right pick when the image will be displayed at a size you do not control — a docs site that renders full-width on a desktop and half-width on a phone, or a page a reader will zoom into.
Be precise about what you are getting. The export wraps the rendered canvas in an SVG foreignObject, which every browser draws correctly at any zoom. Tools that do not implement foreignObject — and that includes several Figma and Illustrator import paths — will open the file blank. If the destination is a design tool rather than a browser, export PNG at 4× instead.
Picking between them
| Need | Use | Why |
|---|---|---|
| Client deliverable, printed or signed off | PDF at 4× | One page, sized to the flow, prints as it looks |
| Docs site or README at variable width | SVG (or PNG at 2×) | Stays sharp at any rendered size in a browser |
| Slide deck | PNG at 3–4× | Survives being scaled up on a projector; no import surprises |
| Poster or A3 print | PNG or PDF at 4× | Roughly 300 DPI at A3 for a 1200×800 canvas |
| Editing in Figma or Illustrator | PNG at 4× | The SVG uses foreignObject, which those importers may not render |
Large workflows
- Turn on auto-layout if the original positions sprawl. A tidy left-to-right layout fits a page far better than the organic arrangement a canvas accumulates.
- Switch direction for tall paper.
layoutDirection: "TB"suits a portrait page;LRsuits landscape and slides. - Drop the node detail.
minimalkeeps a 60-node workflow legible on one sheet wheredetaileddoes not. - Split it. Past roughly 40 nodes, one page per branch reads better than one unreadable poster — highlight each path in turn and export the same layout repeatedly.