mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-10-27 19:27:21 -06:00
Type: Proportional Metrics in vertical type — upright glyphs on the font's proportional heights, vpal (#966)
The second half of #966. With Proportional Metrics on, a vertical segment is also shaped top to bottom, with and without `vpal`: the difference gives each glyph's change of advance down the column and its x and y placement. An upright glyph (not tate-chu-yoko) in a font with vertical metrics takes them on top of its cell, so it moves with its shorter cell; a font without vertical metrics keeps `upright_cell`'s cell, and with the switch off nothing is shaped twice and the column is as before. As in horizontal type, Line-end Punctuation Half Width takes nothing more off the punctuation `vpal` re-spaced and trims the punctuation it leaves full height as before. Docs: mcp.md, and Proportional Metrics leaves the missing lists in gaps.md, type-parity.md and target-app-parity.md. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
committed by
bflatastic
co-authored by
Claude Opus 5.5
parent
9896eda208
commit
2c8b8b0cc1
+1
-2
@@ -96,8 +96,7 @@ from G14 and the budget run of G15: **~170–270 h** one agent, ~50–80 h wall
|
||||
## G4 Advanced type
|
||||
|
||||
- **Missing:** hyphenation and justification options, Optical Margin Alignment (type core); CJK vertical
|
||||
composition (ruby, mojikumi sets and dialog, proportional vertical metrics #966, kinsoku settings #633, manual
|
||||
tate-chu-yoko), Middle Eastern features beyond bidi, variable font axes, spell check with an open dictionary,
|
||||
composition (ruby, mojikumi sets and dialog, kinsoku settings #633, manual tate-chu-yoko), Middle Eastern features beyond bidi, variable font axes, spell check with an open dictionary,
|
||||
Touch Type, Retype, Snap to Glyph; optional preservation of font sizes during group scaling (#1034 enhancement).
|
||||
Itemized in [type-parity.md](type-parity.md).
|
||||
- **Impact:** professional typography and Japanese/Chinese publishing.
|
||||
|
||||
+6
-4
@@ -2669,10 +2669,12 @@ without ideographs uses its em box. One undo step.
|
||||
|
||||
`text.setFormat {proportionalMetrics: true}` (the selected type, or `ids`) and `text.setRangeStyle {id, start, end,
|
||||
proportionalMetrics}` (a range) set full-width glyphs on the proportional widths the font gives them with the
|
||||
OpenType `palt` feature; glyphs the font doesn't re-space keep their full width. Line-end Punctuation Half Width then takes nothing more off the punctuation `palt` re-spaced (the opening
|
||||
bracket at a line's start, consecutive punctuation, the closing mark at a line's end); punctuation left full width is
|
||||
trimmed as before. Off by default and saved only when on. Horizontal type only for now: vertical type sets as before.
|
||||
One undo step.
|
||||
OpenType `palt` feature; glyphs the font doesn't re-space keep their full width. In vertical type, upright glyphs take
|
||||
the proportional heights of the font's `vpal` feature (the glyphs are shaped top to bottom for it) and move with them;
|
||||
a font without vertical metrics keeps its cells. Line-end Punctuation Half Width then takes nothing more off the
|
||||
punctuation `palt` or `vpal` re-spaced (the opening bracket at a line's start, consecutive punctuation, the closing
|
||||
mark at a line's end); punctuation left full width is trimmed as before. Off by default and saved only when on. One
|
||||
undo step.
|
||||
|
||||
```json
|
||||
{"name":"run_command","arguments":{"command":"text.setFormat","params":{"proportionalMetrics":true}}}
|
||||
|
||||
File diff suppressed because one or more lines are too long
+2
-1
@@ -43,7 +43,8 @@ against Illustrator's public documentation; **estimated** unless noted.
|
||||
| Middle Eastern: Character Direction, digit types, kashidas, Middle Eastern composers, split caret | missing | |
|
||||
| CJK: input methods (marked text, candidate window) | done | |
|
||||
| CJK: kinsoku (Hard, Soft, None), Line-end Punctuation Half Width, tate-chu-yoko (auto) | done / partial | custom kinsoku sets, the Mojikumi Settings dialog and the other mojikumi sets missing |
|
||||
| CJK: ruby, proportional vertical metrics (`vpal`/`palt`), manual tate-chu-yoko | missing | #966, #633 |
|
||||
| CJK: Proportional Metrics (`palt` in horizontal type, `vpal` in vertical type) | done | #966 |
|
||||
| CJK: ruby, manual tate-chu-yoko | missing | #633 |
|
||||
| Inline symbols in text | beyond Illustrator | not scored |
|
||||
|
||||
## Revision history
|
||||
|
||||
Reference in New Issue
Block a user