mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-13 22:21:59 +00:00
An image placed several times in an EPS file (the pieces of an envelope or a Warp effect, copies of one image, a symbol's instances) wrote its whole ASCII85 data at every placement: 200 copies for one envelope at the default fidelity, enough for a large photo to pass the 256 MB page limit and lose pieces. The samples of such an image are now written once in the setup as VCim<i>, and each placement reads them from there: - Level 3: a ReusableStreamDecode stream, rewound with resetfile and read through a new FlateDecode filter at each placement. - Level 2: an array of strings of at most 49,152 compressed bytes, fed to RunLengthDecode by a procedure. An image placed once is written where it is drawn, byte for byte as before. The page limit counts a repeated image's samples once, and a colorized image is reused per ink.