freetype-devel
[Top][All Lists]
Advanced

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

Re: new release?


From: Dominik Röttsches
Subject: Re: new release?
Date: Tue, 22 Jun 2021 15:21:22 +0300

Hi Werner,

On Fri, Jun 11, 2021 at 5:44 PM Werner LEMBERG <wl@gnu.org> wrote:
> These are not implemented on the FreeType side yet.  I plan to
> implement them soon.  I need to decide whether it would make sense
> to consolidate the API and only return transformation matrices
> instead of the individual structs for rotate, translate, etc.  If I
> keep the structs, I may need to add values for center positions for
> the newer tables Paint*AroundCenter.

Sounds reasonable.  Shall I wait for this to happen?

I can't promise a tight timeline, but I expect to have that ready in a pull request next week.  

The API changes seem to be only the addition of a PaintScale struct - the other structs already have center coordinates, so no changes seem to be needed there - that's what I can say when no starting to implement these parts.

> I am not sure what the definition of "experimental" is - but I can't
> guarantee API stability yet.  If that's not required for
> experimental, I am okay with releasing this as "experimental".

If we decide to do a release earlier, I will

  (a) add 'experimental' to the `@since` field, and
  (b) add to the `CHANGES` file that API stability isn't guaranteed:
      both functions and structures might change without notice, and
      the major version number of FreeType gets not increased if there
      are changes to the ABI that are not backward-compatible.

> Also, variations support is not in the COLRv1 implementation yet.

Do you expect API changes for this, too?

No, I do not expect changes, with the caveat of not having looked into it in detail. However, generally, variations are configured on the FT_Face and all values returned from the COLR v1 API work based on the FT_Face configured to a certain axis position. So the values returned from the API are static/interpolated until the axis configuration on the FT_Face is changed. So the API surface does not need to change. The approach for getting new interpolated data would be: change axis coords on FT_Face, query for COLR data again, get new interpolated results.

> I plan to familiarize myself with the built-in variations
> interpolation capabilities that FT has - pointers to welcome.

The essential code is in file `src/truetype/ttgxvar.c`.  I think it is
quite well documented.  If you find problems or hard-to-read code,
please add comments and submit them as merge requests :-)

Ack, thanks, I'll look into that.

Dominik


reply via email to

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