Nodes/ComfyUI-Darkroom/CMYK Soft-Proof
ComfyUI Node

CMYK Soft-Proof

Preview the press — while you still get to edit in RGB

By jeremieLouvaert·Created 5 months ago·Updated 2 days ago· 101
CMYK Soft-Proof
  • image
  • preview
target_profile(no CMYK profiles found)
intentperceptual

The gap between screen and paper is the oldest lie in imaging. You grade something that looks perfect on your monitor, the print shop converts it to CMYK, and the shadows clog and the blues turn violet. CMYK Soft-Proof is the node that shows you that conversion in advance - it simulates what your image will look like printed on a specific CMYK stock, without ever forcing you to leave RGB.

It's the entry point of ComfyUI-Darkroom's four-node print workflow, and it's deliberately the friendliest one. The other print nodes tell you what's wrong (Gamut Warning) or whether the ink will dry (TAC Check) or write the final file (CMYK Export TIFF). This one just shows you the result, so you can adjust the grade in RGB and re-prove until it looks right.

How it works

Under the hood it's an RGB → CMYK → RGB roundtrip through the target ICC profile with your chosen rendering intent, done with LittleCMS (Pillow's ImageCms). Convert to the print color space, convert back to sRGB for display, and what you're left with is the color the press will actually reproduce - minus the parts the CMYK gamut can't hold. Crucially, the output stays in RGB, so you can keep editing downstream. The soft-proof is a preview, not a commitment.

The inputs that matter

  • target_profile - the print stock to simulate. Auto-discovered from ComfyUI-Darkroom/data/icc_profiles/ and your OS color store; on Windows you already have FOGRA39, SWOP, GRACoL and friends. If it shows "(no CMYK profiles found)", drop an .icc in and restart.
  • intent - and here the tooltip is worth quoting: perceptual for photos, relative colorimetric for logos, saturation for charts, absolute for pre-press proofing. Pick the one that matches the job.
  • image - the photo in.

Output is a single preview image, wired to PreviewImage like any other.

Install and gotchas

cd ComfyUI/custom_nodes
git clone https://github.com/jeremieLouvaert/ComfyUI-Darkroom
pip install -r ComfyUI-Darkroom/requirements.txt

Or search "Darkroom" in ComfyUI Manager and restart. It's under AKURATE/Darkroom/Print.

Where people get tripped up: this is a simulation, and no on-screen preview is the press. It's accurate about the color shifts the conversion causes; it can't show you paper grain, ink absorption, or the fact that the print shop's RIP might do its own conversion with a different intent. Keep the intent consistent between the Soft-Proof you're looking at and the Export you eventually run. And here's the practical loop worth saving: Soft-Proof → adjust with HSL Selective or Lift Gamma Gain → Soft-Proof again. Two or three passes and the image you see is basically the image that prints.

CategoryAKURATE/Darkroom/Print

Inputs (3)

NameTypeDefaultDescription
imageIMAGE
target_profileCOMBO(no CMYK profiles found)CMYK print stock to simulate
intentCOMBOperceptualperceptual for photos, relative colorimetric for logos, saturation for charts, absolute for pre-press proofing

Outputs (1)

NameTypeDescription
previewIMAGE