vectorcraft/crates
bflatastic 4550b89051 Part of #637: Illustrator EPS and .ai files open from their editing data
An Illustrator EPS (version 9 on) carries the document as the app keeps
it after its printed page (%AI9_PrivateDataBegin: Zstandard or zlib data
in ASCII85 comment lines, or plain), and a .ai file in its first page's
/PieceInfo /Illustrator /Private streams (%AI24_ZStandard_Data,
%AI12_CompressedData or plain, after header comments). Both now open from
it: layers and sublayers (name, order, visibility, lock, printing,
preview, dimming, colour), groups as they were nested, compound paths,
clipping groups and layer clipping, object names, hidden and locked
objects, fills and strokes (grey, CMYK, RGB, spot colours as spot
swatches, caps, joins, dashes, fill rule), linear and radial gradients,
opacity, blend modes, isolation and knockout, embedded images with their
alpha channel, guides and every artboard where it is.

Objects with several fills or strokes, effects or brushes come in as
their drawn look, named after them, with a warning. Type, symbols,
pattern fills, placed files and operators the reader doesn't know are
errors: the file opens as before (the EPS page, the .ai file's PDF
content) with a first warning saying what was left out. A .ai opened with
pages picked, and a .pdf, read the PDF as before.

Reading is bounded (512 MB decompressed, nesting, objects, points, stack,
image sizes checked against their data) and fuzzed in import_fuzz.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 14:52:31 +07:00
..
affinity AF.3: state the Affinity reader's clean-room provenance 2026-10-09 05:20:33 +00: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 Placed documents: the object, drawn exactly and kept as art by every exporter 2026-10-08 12:20:51 -07:00
color Colour: ICC CMYK converts straight into the RGB profile, with black-point compensation 2026-10-09 17:11:34 +13:00
doc Open CMYK TIFFs with an alpha channel, and rasters past 512 MB 2026-10-09 17:11:08 +13:00
effects Part of ROADMAP gap 2: Radial Blur, Smart Blur and Unsharp Mask on a pixel-filter pipeline 2026-10-09 13:30:31 +07:00
engine Part of #637: Illustrator EPS and .ai files open from their editing data 2026-10-09 14:52:31 +07:00
eps Part of #637: Illustrator EPS and .ai files open from their editing data 2026-10-09 14:52:31 +07:00
format M7: inline symbols in text 2026-10-08 15:45:34 -07:00
geom M2.9: hexagon orientation no longer depends on atan2 rounding 2026-10-09 06:37:59 +00:00
mcp Merge #656: Image Trace: Create Strokes 2026-10-09 10:16:02 +07:00
metafile Placed documents: the object, drawn exactly and kept as art by every exporter 2026-10-08 12:20:51 -07:00
pathops Fix #569: Shape Builder merges leave no stray edges in their outlines 2026-10-09 03:04:48 +07:00
pdf Part of #637: Illustrator EPS and .ai files open from their editing data 2026-10-09 14:52:31 +07:00
plugins M0.CI: restore checks without optional fonts 2026-10-08 20:50:54 +01:00
render Part of ROADMAP gap 2: Radial Blur, Smart Blur and Unsharp Mask on a pixel-filter pipeline 2026-10-09 13:30:31 +07:00
svg SVG export: name the unsupported pixel effects without a product name 2026-10-09 13:43:49 +07:00
testkit Part of #637: Illustrator EPS and .ai files open from their editing data 2026-10-09 14:52:31 +07:00
text Fix #683: Preferences > Type > Additional Fonts Folder 2026-10-09 12:05:16 +07:00
tools Part of #394: Smart Guides › Spacing Guides space a moved selection evenly 2026-10-09 11:22:22 +07:00
trace Merge #656: Image Trace: Create Strokes 2026-10-09 10:16:02 +07:00
ui-egui Part of #637: Illustrator EPS and .ai files open from their editing data 2026-10-09 14:52:31 +07:00