mirror of
https://github.com/storytold/designcraft.git
synced 2026-10-26 19:26:46 -06:00
Separable blend formulas work channel by channel, so the spread is drawn twice through the ordinary renderer: C, M and Y complements into RGB, K into a second raster, with the existing transparency groups, masks, effects and parent-page placement. The inks are converted to sRGB once and put over the paper. Two passes regardless of how many objects blend; parent items, nested blends and effect blends (Multiply satin, shadows) blend in CMYK too, and the pass covers the whole view, so blending continues past the trim. An unchanged view is reused from a one-frame cache (64 MiB cap). Spreads with Hue, Saturation, Color or Luminosity keep the RGB-then-proof approximation. Effect blend layers sit outside their clips and offscreen filters, so they see the object's backdrop (RGB too). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>