mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-07 23:00:35 +00:00
In the legacy format, `TZ` makes a re-encoded font from an existing one and can give it encoding pairs of its own, which change only that font's encoding. Its `useDefault` operand says whether the file's `TE` encoding also applies to the font (Adobe Illustrator File Format Specification 7.0, section 3.3.1, https://13thmonkey.org/documentation/fonts/AI7FileFormat.pdf). The reader skipped the body of `%AI3_BeginEncoding` sections and ignored `TZ`, so every string was decoded with `TE`'s encoding. Strings in a re-encoded font are now decoded with its own pairs, then with `TE`'s encoding when `useDefault` is 1, and as Windows-1252 for the codes left. Strings in other fonts keep `TE`'s encoding. The reader reads `TZ` in the body of an `%AI3_BeginEncoding` section and wherever else it appears in the script, with or without the direction operand and the Multiple Master weight vector. The font names are the last two names, and only numbers and the weight vector may follow them; the reader does not use a `TZ` of another shape. The first `TZ` for a font is used. `TZ`'s font names also map the re-encoded font to the font it was made from, as the `%AI3_BeginEncoding` comment does. Type in a re-encoded font that no such comment names now opens in the font `TZ` names; when both name the font, the first one read is used.