[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Ligatures
From: |
Eli Zaretskii |
Subject: |
Re: Ligatures |
Date: |
Mon, 18 May 2020 20:18:35 +0300 |
> From: Stefan Monnier <address@hidden>
> Cc: address@hidden, address@hidden
> Date: Mon, 18 May 2020 13:05:53 -0400
>
> So, maybe we don't need very much info: all we need is a boolean which
> tells us whether the glyph should be treated atomically or not.
> When not treating it atomically, we would (somewhat arbitrarily) divide
> the glyph horizontally into N equal sized "subglyphs" and draw the
> cursor on the corresponding subglyph.
That strikes me as not a very user-friendly UX. Especially if you
keep in mind that glyphs can be composed into a grapheme cluster using
2D offsets, not just left-right one-dimensional offsets.
An alternative which might be nicer is to "split" the composition:
display it as if a ZWNJ character was inserted at point. Thus, moving
forward one buffer position into the ffi would show f followed by a thin bar
cursor followed by the fi; moving forward one more buffer position
would show ff followed by a thin bar cursor followed by i. Etc.
> If Harfbuzz could tell us more precisely how to divide the glyph into
> subglyphs, we could do a better job, of course.
I don't think it's possible because AFAIK fonts don't store this
information. It should be possible, of course, to have a private
database of such offsets, but I don't really see how it could work in
general.
Maybe I'm missing something, though. If someone wants to have a
definitive answer, I suggest to ask on the HarfBuzz mailing list.
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), (continued)
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), Julius Pfrommer, 2020/05/17
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), Eli Zaretskii, 2020/05/17
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), Pip Cet, 2020/05/17
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), Eli Zaretskii, 2020/05/17
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), Pip Cet, 2020/05/17
- Re: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY), Eli Zaretskii, 2020/05/17
- Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)), Eli Zaretskii, 2020/05/18
- Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)), tomas, 2020/05/18
- Re: Ligatures (was: Unify the Platforms: Cairo+FreeType+Harfbuzz Everywhere (except TTY)), Eli Zaretskii, 2020/05/18
- Re: Ligatures, Stefan Monnier, 2020/05/18
- Re: Ligatures,
Eli Zaretskii <=
- Re: Ligatures, Pip Cet, 2020/05/18
- Re: Ligatures, tomas, 2020/05/18
- Re: Ligatures, Pip Cet, 2020/05/18
- Re: Ligatures, tomas, 2020/05/18
- Re: Ligatures, Eli Zaretskii, 2020/05/18
- Re: Ligatures, Clément Pit-Claudel, 2020/05/18
- Re: Ligatures, Eli Zaretskii, 2020/05/18
- Re: Ligatures, Clément Pit-Claudel, 2020/05/18
- Re: Ligatures, Eli Zaretskii, 2020/05/19
- Re: Ligatures, Clément Pit-Claudel, 2020/05/19