Merge pull request #4968 from dotCooCoo/feat/ai-editing-data

This commit is contained in:
BFlat
2026-11-04 11:41:38 +07:00
committed by GitHub
58 changed files with 2812 additions and 129 deletions
+8 -3
View File
@@ -18,7 +18,7 @@ from the public specifications, and users' own `.ai` files are used locally only
| | Illustrator | VectorCraft | Notes |
|---|---:|---:|---|
| Formats opened or placed | ~30 | 29 | missing: FreeHand, CorelDRAW, DWG, HEIC/HEIF, PICT, PS |
| Formats saved (Save As) | 6 (AI, AIT, PDF, EPS, SVG, SVGZ) | 6 + native | `.ai` written PDF-compatible (no Illustrator editing data) or as legacy version 7 (layers and groups, one artboard per file) |
| Formats saved (Save As) | 6 (AI, AIT, PDF, EPS, SVG, SVGZ) | 6 + native | `.ai` written PDF-compatible (with an editing copy of the art: layers, groups, paths, colors, artboards) or as legacy version 7 (layers and groups, one artboard per file) |
| Formats exported | ~16 | 17 | missing: DWG, 3D (OBJ/USDA/glTF); extra: GIF/PNG-8 palette export, DXF up to 2018, layered PSD |
| **Overall (weighted by use)** | | **~75%** | `.ai` and PDF dominate the weighting |
@@ -58,8 +58,13 @@ private editing data. VectorCraft:
When the PDF part of either can't be read (a stream the import refuses), the file opens from its editing
data alone, with the PDF part's error as its first warning, and without the bleed and File Info the PDF
part would give (part of #4366).
- **Writes** a PDF-compatible `.ai` (Save As › `ai`): Illustrator opens it as plain art. It never writes
Illustrator's private editing data, which is undocumented.
- **Writes** a PDF-compatible `.ai` (Save As › `ai`). With the option `editingData` (on by default, Include
Editing Data for Other Apps) every page's `PieceInfo` also carries an editing copy of the art in
`AIPrivateData` streams, in the form VectorCraft's `.ai` reader reads: layers and sublayers, groups, paths with
their fills and strokes (a compound path as one path of all its subpaths), process, spot and global colors, swatches and color groups, guides,
hidden and locked objects, object names and every artboard with its name. Type, gradients, patterns, images,
symbols, clipping groups and live objects are written as plain filled and stroked paths, each with a warning;
transparency and effects other than geometry effects are left out.
- **Writes** a legacy `.ai` of version 7 (Save As › `ai` › Version: Legacy (version 7), `aiVersion: "7"`): the
PostScript form, from the published *Adobe Illustrator File Format Specification* version 7.0
([PRONOM fmt/423](https://www.nationalarchives.gov.uk/PRONOM/fmt/423)), which apps reading `.ai` open with its