diff options
author | Dominik Röttsches <drott@chromium.org> | 2022-06-29 11:48:53 +0300 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2022-06-29 20:27:11 +0200 |
commit | dece9535164696777c1ae0000b399c470c306d6d (patch) | |
tree | 2380c0612dfb90e417c082ef734c871bf2bdbbf9 /include | |
parent | 15fef219d6ed191ef09efad4d8a3a4f4d2b7158b (diff) | |
download | freetype2-dece9535164696777c1ae0000b399c470c306d6d.tar.gz |
[truetype] Perform variation store delta computation with 64-bit precision.
* include/freetype/internal/ftmmtypes.h (FT_ItemVarDelta): Make type
explicitly 32-bit.
* include/freetype/internal/services/svmm.h
(FT_Var_Get_Item_Delta_Func): Change return type to `FT_ItemVarDelta`
* truetype/ttgxvar.h (tt_var_get_item_delta): Change return type to
`FT_ItemVarDelta`.
* truetype/ttgxvar.c (tt_var_get_item_delta): Store scalars and deltas
to intermediate array, perform computation using new method
`FT_MulAddFix`.
Diffstat (limited to 'include')
-rw-r--r-- | include/freetype/internal/ftmmtypes.h | 2 | ||||
-rw-r--r-- | include/freetype/internal/services/svmm.h | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/include/freetype/internal/ftmmtypes.h b/include/freetype/internal/ftmmtypes.h index 44f7e74dd..570c7fdd1 100644 --- a/include/freetype/internal/ftmmtypes.h +++ b/include/freetype/internal/ftmmtypes.h @@ -24,7 +24,7 @@ FT_BEGIN_HEADER - typedef FT_Long FT_ItemVarDelta; + typedef FT_Int32 FT_ItemVarDelta; typedef struct GX_ItemVarDataRec_ { diff --git a/include/freetype/internal/services/svmm.h b/include/freetype/internal/services/svmm.h index 22ddc8c66..b67ea7c60 100644 --- a/include/freetype/internal/services/svmm.h +++ b/include/freetype/internal/services/svmm.h @@ -109,7 +109,7 @@ FT_BEGIN_HEADER FT_ULong offset, GX_ItemVarStore itemStore ); - typedef FT_Int + typedef FT_ItemVarDelta (*FT_Var_Get_Item_Delta_Func)( FT_Face face, GX_ItemVarStore itemStore, FT_UInt outerIndex, |