Nodes/ComfyUI-Inpaint-CropAndStitch/(OLD πŸ’€, use the new βœ‚οΈ Inpaint Stitch node)
ComfyUI Node

(OLD πŸ’€, use the new βœ‚οΈ Inpaint Stitch node)

The deprecated paste-back node, and what replaced it

By lquesadaΒ·Created 2 years agoΒ·Updated 3 months agoΒ· 1,137
(OLD πŸ’€, use the new βœ‚οΈ Inpaint Stitch node)
  • stitch
  • inpainted_image
  • image
β—„rescale_algorithmbislerpβ–Ί

InpaintStitch is the old back-half of the crop-and-stitch pair - in current ComfyUI it shows up as "(OLD πŸ’€, use the new βœ‚οΈ Inpaint Stitch node)". It takes a stitch bundle from the old InpaintCrop plus your inpainted crop and pastes the result back into the original image. It still runs, so it won't break anything you already built. But for anything new, use InpaintStitchImproved instead. You're most likely here because an older workflow has this node and you want to know what it's doing.

What it did

Same job as the modern Stitch. The old Crop recorded where and how it cut your image; this node reads that record, un-does the transform (scales the inpainted crop back to fit the hole, positions it), and blends it in so the seam isn't visible. Everything unmasked stays as it was.

The reason it got replaced: the old pair could shift the paste by a single pixel, and its crop side had memory and crash issues. The April 2025 rewrite made stitching pixel-precise. This node keeps working for backwards compatibility, but there's nothing it does better than its replacement.

The inputs and outputs that matter

  • stitch (STITCH) - the bundle from the old InpaintCrop's stitch output. It must come from the matching old Crop node. Important: this is a STITCH type, and the new Crop node emits a STITCHER - they're not interchangeable, so you can't feed a new Crop into this old Stitch or vice versa.
  • inpainted_image (IMAGE) - your sampled, VAE-decoded crop.
  • rescale_algorithm (default bislerp) - the interpolation used when scaling the crop back to fit. Unlike the new Stitch (which has no knobs at all), the old one exposes this. bislerp is a reasonable default; you rarely need to change it.

Output: a single image - the original with only the masked region swapped in.

How to install it

Ships in the same pack as everything else here. ComfyUI Manager: search ComfyUI-Inpaint-CropAndStitch and install. Or manually:

cd ComfyUI/custom_nodes
git clone https://github.com/lquesada/ComfyUI-Inpaint-CropAndStitch.git

then restart ComfyUI. No models, no extra dependencies (GPL-3.0, by Luis Quesada Torres).

Common issues & troubleshooting

"Type mismatch" wiring the stitch input. You're probably trying to connect a new Crop (which outputs STITCHER) to this old Stitch (which wants STITCH). Match generations: old Crop β†’ old Stitch, new Crop β†’ new Stitch. Better yet, move the whole graph to the improved pair.

Paste is offset by a pixel. The known limitation of the old pair, fixed in InpaintStitchImproved. Upgrade if it matters.

Wrong position or size on paste. The stitch bundle doesn't match the crop you sampled - it has to be the exact one from the Crop that produced this image, not a stale or duplicated branch.

Seam or color mismatch at the edge. Blend width and mask settings live on the Crop side (blend_pixels, blur_mask_pixels), so adjust there. And use the correct VAE plus an inpainting checkpoint so the region itself matches.

Categoryinpaint

Inputs (3)

NameTypeDefaultDescription
stitchSTITCHβ€”
inpainted_imageIMAGEβ€”
rescale_algorithmCOMBObislerp7 options: nearest, bilinear, bicubic, bislerp, lanczos, box, +1

Outputs (1)

NameTypeDescription
imageIMAGEβ€”