FL Images To PDF
Turn a batch of generated images into a single PDF
- images
Most ComfyUI output ends up as a pile of PNGs. Sometimes what you actually want to hand someone is a single document - a contact sheet, a storyboard, a lookbook, a client proof. FL_ImagesToPDF takes an image batch straight out of your graph and lays it into one PDF, one image per page, sized and centered to fit. No exporting to a folder and reassembling in another app; the PDF gets built where the images are made.
It's a niche node, but a genuinely useful one the day you need it, and it anchors a small PDF toolkit inside Fill-Nodes (loaders, mergers, text extractors, encryptors) if your work ever touches documents.
How it works
Feed it a batch of images and it creates a PDF page for each, scaling every image to fit your chosen page size while preserving aspect ratio and centering it on the page. Higher DPI means the images are placed at higher resolution - sharper print, bigger file. The result comes back as an in-memory PDF object, which is the detail worth internalizing: like the other PDF nodes here, it hands off a PDF data type, not a file on disk.
The inputs and outputs that matter
Three required inputs:
images(IMAGE) - the batch to bind. Each image becomes one page, in batch order.dpi(INT, 72–600, default 300) - placement resolution. 300 is print-quality; drop to 150 or 72 if you just need a lightweight preview and want a smaller file.page_size(A4/Letter/Legal) - the paper. Pick to match wherever it's going to be viewed or printed.
Output is a single PDF - the pack's PDF data type. To get an actual file, wire it into FL_PDFSaver, which writes it to a path you specify. You can also route it through FL_PDFMerger to combine with another PDF first.
When you'd reach for it
Deliverables and review artifacts. A storyboard of generated frames to share. A batch of product renders as a single proof. A grid of dataset samples for a quick review. Anything where "here's a folder of PNGs" is worse than "here's one PDF."
Installing it
ComfyUI Manager → ComfyUI_Fill-Nodes → install → restart. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/filliptm/ComfyUI_Fill-Nodes
then restart. The PDF nodes rely on ReportLab (and the wider pack uses PyPDF2 / PyMuPDF for its other PDF tools), which get installed with the pack. Fill-Nodes is a big collection, so the first launch pulls a lot of libraries even if PDFs are all you came for.
Common issues & troubleshooting
No file appears. This node outputs an in-memory PDF, not a saved file. Add FL_PDFSaver downstream and give it a directory and filename - that's the step that actually writes to disk.
One image per page, not a grid. This node does full-page-per-image. If you want multiple images tiled per page with captions, that's a different tool - look at the pack's caption-layout PDF node instead.
Huge file size. DPI drives it. 600 DPI across a big batch produces a heavy PDF fast. For on-screen viewing, 150 or even 72 DPI is usually plenty.
Aspect ratios look letterboxed. It preserves each image's proportions and centers it, so a wide image on a portrait A4 page leaves margins. That's correct behavior - match page_size orientation to your images if the whitespace bothers you.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| images | IMAGE | — | |
| dpi | INT | 30072–600 | — |
| page_size | COMBO | A4 | 3 options: A4, Letter, Legal |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| — |