mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-10-29 04:07:12 -06:00
Open .ai files whose non-native art has ASCII85 lines starting with %_
A letterhead saved by Illustrator 28 without PDF compatibility wouldn't open: "its editing data can't be read (it ends inside a layer)". Its layer starts with a /ForeignObject (non-native art: the content of a placed PDF), whose /Data entry is the PDF as ASCII85 in comment lines. ASCII85 includes `_`, so about one line in 85 starts with `%_`, which the lexer reads as hidden tokens; a `(` in such a line opened a string that swallowed the dictionary's end, the rest of the art and the layer's LB. The reader now skips to the data's `~>` after `/Data ,` in a /ForeignObject, as it already did for a /Binary dictionary's ASCII85, and leaves the non-native art out with a note (nothing draws its PDF from the editing data yet). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_017ZwZjADUZP4VzvrFGpiZch
This commit is contained in:
committed by
bflatastic
co-authored by
Claude Fable 5.1
parent
57932f1204
commit
f2ba41d1c1
+2
-1
@@ -450,7 +450,8 @@ CMYK too.
|
||||
PostScript files (`.eps`, and `.ai` files saved in older formats or without PDF compatibility) open through the EPS
|
||||
reader (see EPS and PostScript import). An `.ai` saved without PDF compatibility (its PDF part is only a placeholder
|
||||
page) opens from its editing data alone: its type is made from the file's text document where it can be (point type), and
|
||||
what can't be is left out with a warning; without editing data it says it can't be opened.
|
||||
what can't be is left out with a warning; so is non-native art (the content of a placed PDF, which Illustrator shows but
|
||||
doesn't edit and keeps as a PDF inside the editing data); without editing data it says it can't be opened.
|
||||
|
||||
What a PDF holds comes in as editable art: soft masks become opacity masks (an alpha mask as a white copy of its art;
|
||||
the backdrop colour gives Clip, an inverting transfer function Invert), transparency groups keep isolation and knockout,
|
||||
|
||||
Reference in New Issue
Block a user