mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-14 08:56:08 +00:00
Type: right-to-left lines with tabs are measured as they are drawn
A right-to-left line draws the text before a tab after it, but its width was measured in the order of its text. A right-aligned line such as "אב גד<tab>הו זח" with a stop at 150 pt in a 300 pt frame ended 5.59 pt past the frame's right edge, and right, center and decimal stops aligned the text before the tab instead of the text drawn after it. - The line's width is measured in drawing order, each tab up to its stop from where the glyphs drawn before it end. Right, Auto and centered lines are aligned by that width. Stops are still measured from the left edge. - Right, center and decimal stops align the text drawn after the tab. - Area type breaks a line with a tab where it fits as drawn, and wraps a line that fits only in the order of its text. Once the line holds a tab, it reads on while the least it can be drawn at fits, then ends at the latest break that fits as drawn: up to 256 breaks are measured from the latest back, and earlier breaks without a hyphen are bisected. Hyphenation points are measured as drawn the same way, so the line hyphenates at a point that fits. - Only lines of horizontal paragraphs with right-to-left text keep a list of their break candidates. - A tab that ends a wrapped right-to-left line is drawn before the line at its own width instead of pushing the line to the right. Docs: docs/target-app-parity.md.
This commit is contained in:
@@ -41,6 +41,7 @@ Window → Help Bar toggles the bottom tool-help strip independently of the stat
|
||||
The shared assessment status line and revision history are current upstream; this dated section records the submission's feature evidence and revisions without rescoring upstream or claiming a new combined build or runtime measurement.
|
||||
|
||||
- File formats and Type core (#6147): `.ai`/EPS type from the text document keeps its paragraphs' tab stops, and right-aligned area type sets the text before a line's last tab at its stops, from the left edge, and the text after it against the right edge. Evidence: `ate::tests::a_paragraph_keeps_its_tab_stops`, `ate::tests::a_story_s_tab_stops_are_bounded`, `tests::right_aligned_area_type_sets_the_text_after_its_last_tab_against_the_edge`, `import_fuzz::text_frames_with_hostile_paragraph_attributes_never_panic`; scores and estimates unchanged
|
||||
- Type core: a right-to-left line with tabs is measured in the order it is drawn, with tab stops still measured from the left edge. Each tab goes to its stop from where the glyphs drawn before it end, and right, center and decimal stops align the text drawn after the tab. Right, Auto and centered lines are aligned by that width, and area type wraps a line that is too wide when drawn. Evidence: `tests::justify::a_right_to_left_line_with_a_tab_is_aligned_as_it_is_drawn`, `tests::justify::a_right_to_left_line_with_a_tab_wraps_when_it_does_not_fit_as_drawn`, `tests::justify::right_to_left_tab_stops_align_the_text_drawn_after_them`, `tests::justify::a_right_to_left_line_with_two_tabs_and_a_latin_run_ends_on_the_right_edge`, `tests::justify::right_aligned_right_to_left_point_type_with_a_tab_ends_at_its_origin`; scores and estimates unchanged
|
||||
- File formats and Type core (#6137): `.ai`/EPS type from the text document keeps auto leading at the paragraph's share of each line's largest type, the paragraph's hyphenation options, and may show more of the last lines the file sets in an area frame of its own, when growing the frame by its lines' deepest descent plus 0.05 pt shows them; a line a soft return ends is justified as a wrapped line is. Evidence: `ate::tests::auto_leading_follows_the_size_of_each_line`, `ate::tests::a_paragraph_keeps_its_hyphenation_options`, `ate::tests::the_last_lines_the_file_sets_in_its_frame_show`, `tests::fit_source_lines_keeps_the_last_lines_the_source_sets`, `tests::typo::soft_return_in_justified_text_spreads_like_a_wrapped_line`. Limits: frames grow only for area type of one frame, horizontal, by its lines' deepest descent plus 0.05 pt; type in a font that isn't installed, and hyphenation in a language that isn't imported, still lay out differently; scores and estimates unchanged
|
||||
- Current-main conflict reconciliation retains upstream and feature behavior; scores and estimates unchanged
|
||||
- Superseded 2026-10-20 behavior, retained as history: Artboard Options shares existing presets and orientation controls and can fit artwork without moving it; artwork fitting uses the original target artboard and revision-scoped bounds caches (scores/hours unchanged)
|
||||
|
||||
Reference in New Issue
Block a user