vectorcraft/crates
bflatastic a18e671817 Fix #334: .ai import leaves out the white page under the layers
A PDF-compatible .ai paints the editor's page (an opaque white rectangle the
size of the page) before its first optional-content layer and outside every
layer. It came in as art: an extra "Page 1" layer with a page-sized white path
behind the artwork, which hid white art and gave SVG/PNG/PDF exports an
opaque background.

For pages with the editor's private data (the way the importer already tells
a .ai from a PDF), the first art outside every layer, painted before any
layer, is dropped when it is a plain fill-only rectangle in an opaque,
non-spot white, with normal blending, equal to the crop box (0.5 pt
tolerance). Plain PDFs keep such a rectangle as art (as the reference app
does when opening a PDF), and so does anything else: grey, smaller or larger
rectangles, strokes, translucency, white inks, fills over the layers.

The white-cover test the soft-mask reader used is now a shared helper.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 06:03:45 +07:00
..
brush M4.39: SVG symbols as <symbol>/<use>, hidden layers on Save, Dublin Core metadata 2026-10-05 09:03:52 +07:00
cad Fix #177: DXF Fit and Aligned text span their two points 2026-10-07 02:14:39 +07:00
color M4.98: freeform gradients export to SVG as images clipped to their shapes 2026-10-05 13:25:16 +07:00
doc Type: files with Auto alignment open in older builds (review of #300) 2026-10-08 05:25:03 +07:00
effects M8.14: Type and symbols in perspective are really projected and stay editable; attachments survive copies 2026-10-06 12:10:00 +07:00
engine Fix #361: Direct Selection: dragging a segment bends or stretches it 2026-10-08 05:35:54 +07:00
eps EPS import: type layout counts against the op budget, hostile executable-file tests (review of #331) 2026-10-08 05:24:44 +07:00
format Select: saved selections checked when a file opens, names capped, docs (review of #318) 2026-10-08 05:24:44 +07:00
geom Path: Remove Anchor Points is Object › Path's one item and shares the Delete Anchor Point refit (review of #241) 2026-10-08 03:27:07 +07:00
mcp MCP: panel names from the dock's own tables, object-read errors kept apart, docs (review of #328) 2026-10-08 05:24:44 +07:00
metafile M8.16: Envelopes bend images, symbols, gradients, patterns and appearance; warps keep their frame 2026-10-06 12:01:47 +07:00
pathops Path: Remove Anchor Points is Object › Path's one item and shares the Delete Anchor Point refit (review of #241) 2026-10-08 03:27:07 +07:00
pdf Fix #334: .ai import leaves out the white page under the layers 2026-10-08 06:03:45 +07:00
plugins Fix #121: sandboxed WebAssembly plug-ins: object filters and live effects 2026-10-06 00:19:41 +07:00
render Layers: sublayers are layers, not objects, and every row has a command 2026-10-07 22:29:15 +07:00
svg Type: Paragraph Direction instead of an Automatic alignment toggle; bidi only where needed (review of #300) 2026-10-08 05:25:01 +07:00
testkit M4.62: PDF/.ai layers from optional content: named layers with visibility, print state and lock; art that is off as hidden layers 2026-10-05 13:05:12 +07:00
text Type: Paragraph Direction instead of an Automatic alignment toggle; bidi only where needed (review of #300) 2026-10-08 05:25:01 +07:00
tools Alt-dragging with Rotate, Reflect, Scale or Shear transforms a copy 2026-10-08 05:35:55 +07:00
trace Robustness: VectorCraft never crashes — no panics in shipped code 2026-10-05 06:28:59 +07:00
ui-egui Fix #362: Spanish interface (es) 2026-10-08 06:03:37 +07:00