mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-14 21:44:57 +00:00
Some SVG readers draw a masked group only inside the bounding box of its shapes. A drop shadow, glow, blur or feather inside the group paints past those shapes, so these readers left it out, while others drew it. A masked group now starts with a rectangle over the mask's region, unpainted (fill="none") and hidden (visibility="hidden"), when what it holds has a visible raster effect: on a member at any depth, on a fill or stroke, in a symbol's art, or in the art a blend or other live object is written as. The rectangle widens the group's bounding box without drawing anything, and import leaves it out. The masked groups of a knockout group get the same rectangle when an element inside them has such an effect. Other masked art, brushed strokes included, is written as before, and so is an object whose own effects are written outside its mask. Tests: a_masked_group_spans_its_region_when_its_art_paints_past_its_shapes and a_knockout_group_spans_its_masks_when_an_element_paints_past_its_shapes in crates/svg/tests/it/blend_export.rs.