If a symbol contains clipping groups or freeform gradients, its bounding box is calculated based on bounds of clipped contents, not masks
If you convert a clipping group to a symbol, the bounding box for it will be calculated according to clipped art and not the clipping path, resulting in a larger box.
The same exact behaviour we had for rasterized clipping groups (now fixed).
Please fix this one too.
-
Rixn commented
The boundary of a Symbol includes hidden objects from i e clipping masks. That is very troublesome. It should keep the same boundary as the symbol had prior to being made a symbol.
-
Monika Gause commented
When creating a clipping mask, the bounding box is the same as the mask.
When creating a symbol from this, the bounding box is the complete object. Please adjust the bounding box of the symbol the the mask boundaries. -
The problem is that all shapes filled with freeform gradients are containers with dynamically generated triangular meshes inside. Since triangular meshes are not curved at their edges, but segmented, these meshes needed to be hidden, so Ai hides them in secretly generated clipping masks, invisible for users...
And since the bounding box of a symbol for some stupid reason is measured by its clipped content’s bounds, and not the mask, we get this behaviour. A stupid situation :(
Voted. -
[Deleted User] commented
Another example on Mac OS Ai 25.2
-
Here is the GIF showing the problem:
https://dl.dropboxusercontent.com/s/cvg7rih4a7dmlsn/clipping_symbol.gif -
To respect legacy symbols, please add this as an option, but set it as the default (because I doubt anyone really needs a clipped art to influence the bounding box).
-
Rixn commented
Symbols: Make the bounding box of Symbols follow the visible object, not the hidden ones.
-
John D commented
Rasterizing is another workaround but not ideal.
-
John D commented
Illustrator CC 23 - Win 10
Replicate
1.) Create a rectangle and fill with a freeform gradient
2.) Create a symbol from the rectangleResult
Symbol bounding box is larger than the rectangle.3.) Undo symbol creation
4.) Fill rectangle with a normal gradient
5.) Create a symbol from the rectangleResult
Symbol is exactly same size as rectangleThis messes up complex symbols if they have a freeform gradient somewhere on the edge. Only solution is to revert to using a normal gradient.