mirror of
https://github.com/storytold/figcraft.git
synced 2026-11-03 00:39:44 -06:00
The renderer draws drop shadows, layer blurs and texture at their size in page units however a layer is transformed, but sized a layer from its local box grown by the effects' reach in local units, so under a transform that scales down the effect was cut (245 levels on the canvas, exports holding half to 60% of the paint). bounds_within now takes the layer's local-to-page map and turns the reach into local units per axis. A drop shadow's spread of a filled outline is the exception: the outline is grown before it is transformed, so that part follows the layer's scale. Layer bounds and own_paint_bounds take, per shadow, the larger of the two readings, so an unscaled layer comes out as before; exports of scaled-up spread shadows, which were cut, now hold them, and so do the corners of a turned rectangle's spread. The mitre reach is clamped like the other reaches, so a huge spread no longer makes bounds NaN. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>