On Thu, Jun 30, 2016 at 9:06 PM,  <[email protected]> wrote:
>
>
>> On Jun 30, 2016, at 11:41 PM, Behdad Esfahbod <[email protected]> wrote:
>>
>> No, it wouldn't be safe necessarily.  That's exactly what the
>> unsafe-to-break API is about, but that's not finished yet.  For now,
>> you have to reshape the entire new string.
>
> That’s O(n^2) in terms of the amount of shaping that has to be done per 
> paragraph based on the length of the paragraph text, and not workable in 
> practice

What Pango (and possibly other systems) does is to shape the full
paragraph, then find line-break location, then reshape the
just-decided line but continue with the rest of the paragraph as if
the shaping wouldn't change the width much.

>>> On Thu, Jun 30, 2016 at 8:31 PM, Kelvin Ma <[email protected]> 
>>> wrote:
>>> If I have the string A = 'affifibcd' and the master list of shaped glyphs
>>>
>>> [a 0] [ffi 1] [fi 4] [b 6] [c 7] [d 8]
>>>
>>> and I wanted to shape the substring A[2:] ('fifibcd'), could I simply take
>>> my preshaped glyphs after the cluster at or above (ceiling) i = 2 and only
>>> reshape the segment A[2:6]?
>>>
>>> So I would reuse the glyphs
>>>
>>> [fi 4] [b 6] [c 7] [d 8]
>>>
>>> and reshape the segment A[2:6] = 'fifi' to get
>>>
>>> [fi 2] [fi 4]
>>>
>>> and add them together (dropping the last glyph in the reshaped segment) to
>>> get
>>>
>>> [fi 2]  [fi 4] [b 6] [c 7] [d 8]
>>>
>>> ?
>>> Would this be the same result as reshaping the entire segment A[2:]? Would
>>> this still work for RTL text, or a substring that’s on the left-hand side of
>>> the parent string like A[:5] = 'affif'?
>>>
>>> _______________________________________________
>>> HarfBuzz mailing list
>>> [email protected]
>>> https://lists.freedesktop.org/mailman/listinfo/harfbuzz
>>>
>>
>>
>>
>> --
>> behdad
>> http://behdad.org/



-- 
behdad
http://behdad.org/
_______________________________________________
HarfBuzz mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/harfbuzz

Reply via email to