.ai save: a reopened file opens on the artboard active when it was saved

Squashed from #5975 onto main.
This commit is contained in:
dotCooCoo
2026-11-08 11:22:28 +07:00
committed by bflatastic
parent 74863fa778
commit b8233f7c19
16 changed files with 157 additions and 22 deletions
+2 -1
View File
@@ -66,7 +66,8 @@ private editing data. VectorCraft:
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, every artboard with its name, the active artboard (`CropAreaActive`: the
view's active artboard when the app saves or exports the file, else the one the document opened on, else the first;
the reader opens the file on it), the transparency of objects and layers
the reader opens the file on it, and so does the restore of the native document a file VectorCraft saved carries),
the transparency of objects and layers
(opacity, blending mode, isolation, knockout and knockout shape), objects' opacity masks, and clipping groups and
clipping layers clipped by a path or compound path, linear and radial gradients on fills and strokes (with their
stops' opacity, midpoints and spot colors, elliptical radials and focal points) and gradient swatches, and
+3 -2
View File
@@ -875,6 +875,8 @@ document exactly (`restored: true`); when another app changed the pages, or the
imported instead and the first warning says why. Choosing a standard turns it off (PDF/A refuses it). Save to a `.ai`
path (`document.save {path: "art.ai"}` or `{format: "ai"}`) writes a PDF-compatible file that always carries the
document, takes the PDF options and keeps its path when reopened, so Save writes `.ai` again; a `.ait` opens untitled.
The restored document opens on the artboard its editing copy names as active. A file saved with `editingData: false` has
no editing copy and opens on the first artboard.
`document.export` / `serialize` to `.ai` (and the CLI's `run --export x.ai` and `convert in.svg out.ai`) write the same file
without giving the document a path. `options: {aiVersion: "7"}` writes legacy `.ai` files of version 7 instead (the
PostScript form, which keeps layers, groups, compound paths and clipping groups in apps that read it), one per artboard
@@ -4749,8 +4751,7 @@ or in `options` (`file.formatOptions {format}` lists them with their values):
- The editing copy of a `.ai` or `.ait` file (`editingData`) names its active artboard (`CropAreaActive`): the active
artboard of the app's view when the app saves or exports the file, otherwise the artboard the document opened on (the
active artboard of the `.ai` file it was opened from), else the first. A `.ai` file read from its editing copy
opens on that artboard. VectorCraft opens a `.ai` file it saved from the native document the file carries, on the
first artboard.
opens on that artboard, and so does a `.ai` file restored from the native document it carries.
File → Save As asks for these in the save options dialog (VectorCraft Options) after the save panel, and Save a Copy
does too for a `.ai` file; Save, Save a Copy to a native file and Save as Template reuse the options as last saved (or Use Compression).