mirror of
https://github.com/storytold/vectorcraft.git
synced 2026-11-13 21:17:48 +00:00
Text wrap can split a line into spans that share a baseline. The spans after the first were measured across the height of the line set in the first one, so a taller line set in a later span could run into a wrap object the shorter line stayed clear of. Each further span is now measured again across the height of the line that goes in it. The line gets the part that is free, and a span with no free part, or with a part narrowed to less than the line's first word, is left empty. The Every-line Composer and the line loop both place lines through `Pen::place`, so they agree. The Every-line Composer also keeps a line start whose line found no room while a longer line from it would be taller. A taller line steps down the frame by its own leading and can find room the shorter line's steps missed. Tests: a_further_span_is_measured_across_the_height_of_its_line, composition_tries_a_longer_line_after_one_that_cannot_be_set.