freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Odp: Re: ttfautohint — additional feature requests.


From: Werner LEMBERG
Subject: Re: Odp: Re: ttfautohint — additional feature requests.
Date: Sat, 22 Feb 2020 17:05:05 +0100 (CET)

> > [about displaying embedded bitmaps]
>
> Uhh I do NOT care about DirectWrite rendering and I never intend to
> optimize my fonts for it because there are so many flavors of
> DirectWrite and each application chooses its own, so it's entirely
> meaningless to do this.

But if you are in GDI mode, embedded bitmaps are always used, no?  I'm
not a Windows user, so I can't verify it.  Otherwise you might add the
CJK characters as described in my previous e-mail – this is just a
minor overhead.

> Embed bitmaps are obviously not the hinting solution.

I disagree: Creating embedded bitmaps is *much* simpler than creating
correct hinting at very small sizes (i.e., <= 14ppem, say).

> Ok so this is a genuine text file generated by Microsoft Notepad.
> Each newline is 0x0D, 0x0A.  [...]

This looks OK, thanks, I can now read this e-mail without any
problems.

> I'm only focusing on classic GDI rendering.  [...]

Well, as mentioned earlier, ttfautohint won't support GDI hinting,
period.  You are welcome to discuss some general issues
w.r.t. bytecode hinting on the mailing list, but asking for special
GDI solutions to create hints will lead to nowhere.

> Classic GDI is what a Windows user gets when ClearType is disabled
> but smooth edges is left on.  Classic GDI has been known to me as
> the most reliable and best way to display truly hinted fonts as it
> properly utilizes the TrueType instructions, uses a standard 4×4
> oversampling, uses correct gamma (deal-breaker with most rendering
> engines) and automatically switches anti-aliasing modes between 4×4
> and 1×1 depending on the 'gasp' table.
>
> Can you simulate ALL of the above with FreeType? I don't have a
> testing environment that I'm sure uses ALL the possible FreeType
> parameters.

This is a good question.  I dare to say that the results are similar.
However, FreeType is not a Windows clone, thus rendering differences
are inevitable.  The exception is B/W rendering mode with bytecode
hinting: I tried hard to make the output identical, but some edge
cases are still treated differently, mostly due to different rounding
in the Windows and FreeType engine.

Note that FreeType clients have to handle the 'gasp' table by
themselves; FreeType doesn't automatically switch rendering modes, but
it might be a good idea to improve that, see

  https://savannah.nongnu.org/bugs/index.php?43380

> The ttfautohint project might give rise to additional side projects:
> [...]

Nice ideas, but all of this depends on volunteers – some stuff might
be folded into ttfautohint itself.  Whoever is interested in such
projects: please provide patches!  Sorry to say, but I neither have
interest nor time to work on such extensions.

By the way, I think that many of your ideas are better integrated into
interactive font editors like FontForge than into ttfautohint.  Some
other ideas like 'ttfautoclone' are already doable with various tools
from other parties.


    Werner

reply via email to

[Prev in Thread] Current Thread [Next in Thread]