mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-10-14 19:26:56 -04:00
Legacy PostScript .ai files (Illustrator 3-8, and their EPS) open through the EPS interpreter, which only recorded what was drawn: every group came in flattened. In a file in Illustrator's format (its %AI comments, or Illustrator named as the creator) the `u` ... `U` it writes at the top level now open and close groups, whatever its prolog defines them as, so groups come in nested as they were, between and inside clipping groups. clipnest's Clip carries an optional region: without one it is a plain group, nested in the same chain as the clips (ids given in opening order, so a chain of clips and groups sorts by id). Clips nested without end used to nest clipping groups past the stack (a stack overflow in EPS and EMF/WMF import): clips and groups now nest at most 128 deep with a warning, and each object's chain counts against the EPS reader's drawing budget. PDF-compatible .ai (Illustrator 9+) can't get the same: its PDF content draws each object on its own and doesn't mark plain groups (only layers, clipping groups and groups with opacity, blending or a mask, which already come back); the groups live only in the private data, which is out of scope. Documented in ROADMAP and docs/mcp.md. Addresses Discord feedback. Co-Authored-By: Claude Opus 5.5 <[email protected]>