freetype/src/truetype
Werner Lemberg 6713b1e41a [truetype] Fix deactivation of variation font handling.
According to the documentation, the functions `FT_Set_Named_Instance`,
`FT_Set_MM_Design_Coordinates`, `FT_Set_Var_Design_Coordinates`, and
`FT_Set_Var_Blend_Coordinates` can unset the `FT_FACE_FLAG_VARIATION` flag.
(The same is true for `FT_Set_MM_WeightVector` but this information was
accidentally omitted from the documentation.)

However, if a call of these functions didn't change the axis values this
could fail because internal shortcuts exited too early.

This commit reorganizes the code to handle `FT_FACE_FLAG_VARIATION` in the
top-level API functions, also taking care of the issue at hand.

* src/base/ftmm.c (FT_Set_MM_Design_Coordinates, FT_Set_MM_WeightVector,
FT_Set_Var_Design_Coordinates, FT_Set_MM_Blend_Coordinates,
FT_Set_Var_Blend_Coordinates): Handle `FT_FACE_FLAG_VARIATION`.

* src/truetype/ttgxvar.c (TT_Set_MM_Blend, TT_Set_Var_Design,
TT_Set_Named_Instance) Don't handle `FT_FACE_FLAG_VARIATION`.

* src/type1/t1load.c (T1_Set_MM_Blend, T1_Set_MM_WeightVector,
T1_Set_MM_Design): Ditto.

* src/cff/cffobjs.c (cff_face_init): Use `FT_Set_Named_Instance` instead of
low-level functions.

* src/truetype/ttobjs.c (tt_face_init): Ditto.
2023-05-06 18:53:50 +02:00
..
module.mk Update all copyright notices. 2023-01-17 09:18:25 +01:00
rules.mk Update all copyright notices. 2023-01-17 09:18:25 +01:00
truetype.c Update all copyright notices. 2023-01-17 09:18:25 +01:00
ttdriver.c s/set_instance/set_named_instance/ 2023-05-06 18:53:50 +02:00
ttdriver.h Update all copyright notices. 2023-01-17 09:18:25 +01:00
tterrors.h Update all copyright notices. 2023-01-17 09:18:25 +01:00
ttgload.c * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Use for-loop. 2023-03-17 23:35:10 -04:00
ttgload.h Update all copyright notices. 2023-01-17 09:18:25 +01:00
ttgxvar.c [truetype] Fix deactivation of variation font handling. 2023-05-06 18:53:50 +02:00
ttgxvar.h New Variation Font function FT_Get_Default_Named_Instance. 2023-05-06 18:53:50 +02:00
ttinterp.c s/this is,/that is,/ 2023-04-27 06:24:48 +02:00
ttinterp.h [truetype] Simplify memory management. 2023-03-06 16:23:14 -05:00
ttobjs.c [truetype] Fix deactivation of variation font handling. 2023-05-06 18:53:50 +02:00
ttobjs.h [truetype] tt_size_reset_height to take FT_Size 2023-04-17 12:32:04 -04:00
ttpload.c Update all copyright notices. 2023-01-17 09:18:25 +01:00
ttpload.h Update all copyright notices. 2023-01-17 09:18:25 +01:00
ttsubpix.c * src/*: Replace leading underscores with trailing ones in dummy variables. 2023-02-26 20:18:54 +01:00
ttsubpix.h Update all copyright notices. 2023-01-17 09:18:25 +01:00