so I finally got around implementing a concept: a new API entry
point `FT_Face_SetStemDarkening( FT_Face face, FT_Bool enable )`.

What is the intended scenario for this function?  What type of
application is going to use it?

Every toolkit that wants to apply linear alpha blending and gamma correction when rendering fonts. I made it a separate function instead of a load flag because you said we're running out of flags :) And, I made it a FT_Face property because Behdad said that would make the API more thread-friendly.

It toggles a new member of FT_FaceRec `no_stem_darkening`.

You can't modify `FT_FaceRec' since it would break ABI.  However, you
can add stuff to `FT_Face_InternalRec'; this seems to be sufficient
for your proposal.

Ah, okay.

To get rid of duplication, the `no_stem_darkening` property should
probably be removed from the drivers and the darkening_parameters
moved to FT_Face.

So, comments?

If we are going to move properties from `FT_Library' to `FT_Face', I
would rather like to have a generic interface that manages options for
`FT_Face': something like an `FT_Face_Option' function, probably using
the `FT_Parameter' structure so that arbitrary data can be set (and
retrieved).

Can probably do.


_______________________________________________
Freetype-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/freetype-devel

Reply via email to