> OK.  I think it is a bad side effect of the current auto-hinting
algorithm that there are different approaches.

I just want to clarify: you understood that the reason I used different
approaches for each letter was to compare the approaches?  My intent is to
use one of those approaches as a universal algorithm for all characters
with tildes.  So every character would just have a boolean flag for whether
to apply tilde hinting or not.

> Looks good.  To help people understand the non-trivial algorithm I
suggest that you add a big comment that shows it working step by step
for an example font, using a reduced set of features and glyphs.

will do!

Also, did you see my question about a glyph mapping to multiple characters?

On Sat, Sep 30, 2023 at 2:40 AM Werner LEMBERG <w...@gnu.org> wrote:

>
> > > Thanks.  Do you have meanwhile found an explanation why o-tilde
> > > looks so bad for Times New Roman at 16ppem?
> >
> > All 4 letters in each row have a different approach:
> >
> > õ: vertical stretch, no segment removal
> > ñ: no vertical stretch, segment removal
> > ã: vertical stretch and segment removal
> > all other tildes: no changes applied
>
> OK.  I think it is a bad side effect of the current auto-hinting
> algorithm that there are different approaches.  However, using the
> adjustment database I wonder whether the knowledge of the character
> topology can help improve the situation.  In other words, do you see a
> possibility to 'decouple' the (vertical) hinting of the tilde from the
> base glyph hinting by checking a flag in the database?  For this
> purpose, a 'tilde' could be defined as the contour that lies higher
> than the ascender of small letters – this implies that you need
> another flag or enumeration to refer to small letter, uppercase
> letters, etc.
>
> As an example, the database information for glyph 'o tilde' could be
>
>   * lowercase character
>   * hint contour(s) higher than the lowercase ascender hight
>     separately
>   * stretch tilde vertically
>
> > I implemented the algorithm for all glyph variants!  The version I
> > used is different from what I wrote originally to fix some errors.
>
> Looks good.  To help people understand the non-trivial algorithm I
> suggest that you add a big comment that shows it working step by step
> for an example font, using a reduced set of features and glyphs.
>
> > I've only tried it on a pretty simple case so far, so I'll need to
> > assemble a more complex test font or two.
>
> A feature-rich (and freely available) font family is 'Libertinus', for
> example.
>
>
>     Werner
>

Reply via email to