[truetype] Fix gxvar delta interpolation.
The coordinates of the base font should be used for interpolation purposes, NOT the current points (i.e., the result of accumulation of previous deltas). * src/truetype/ttgxvar.c (TT_Vary_Apply_Glyph_Deltas): Initialize `points_org' before looping over all tuples.
This commit is contained in:
parent
4261103e35
commit
0f9ddf20c8
11
ChangeLog
11
ChangeLog
|
@ -1,3 +1,14 @@
|
||||||
|
2016-07-14 Behdad Esfahbod <behdad@behdad.org>
|
||||||
|
|
||||||
|
[truetype] Fix gxvar delta interpolation.
|
||||||
|
|
||||||
|
The coordinates of the base font should be used for interpolation
|
||||||
|
purposes, NOT the current points (i.e., the result of accumulation
|
||||||
|
of previous deltas).
|
||||||
|
|
||||||
|
* src/truetype/ttgxvar.c (TT_Vary_Apply_Glyph_Deltas): Initialize
|
||||||
|
`points_org' before looping over all tuples.
|
||||||
|
|
||||||
2016-07-12 Werner Lemberg <wl@gnu.org>
|
2016-07-12 Werner Lemberg <wl@gnu.org>
|
||||||
|
|
||||||
* Version 2.6.5 released.
|
* Version 2.6.5 released.
|
||||||
|
|
|
@ -1922,6 +1922,9 @@
|
||||||
FT_TRACE5(( "gvar: there are %d tuples:\n",
|
FT_TRACE5(( "gvar: there are %d tuples:\n",
|
||||||
tupleCount & GX_TC_TUPLE_COUNT_MASK ));
|
tupleCount & GX_TC_TUPLE_COUNT_MASK ));
|
||||||
|
|
||||||
|
for ( j = 0; j < n_points; j++ )
|
||||||
|
points_org[j] = outline->points[j];
|
||||||
|
|
||||||
for ( i = 0; i < ( tupleCount & GX_TC_TUPLE_COUNT_MASK ); i++ )
|
for ( i = 0; i < ( tupleCount & GX_TC_TUPLE_COUNT_MASK ); i++ )
|
||||||
{
|
{
|
||||||
FT_UInt tupleDataSize;
|
FT_UInt tupleDataSize;
|
||||||
|
@ -2057,10 +2060,7 @@
|
||||||
/* we have to interpolate the missing deltas similar to the */
|
/* we have to interpolate the missing deltas similar to the */
|
||||||
/* IUP bytecode instruction */
|
/* IUP bytecode instruction */
|
||||||
for ( j = 0; j < n_points; j++ )
|
for ( j = 0; j < n_points; j++ )
|
||||||
{
|
|
||||||
points_org[j] = outline->points[j];
|
|
||||||
has_delta[j] = FALSE;
|
has_delta[j] = FALSE;
|
||||||
}
|
|
||||||
|
|
||||||
for ( j = 0; j < point_count; j++ )
|
for ( j = 0; j < point_count; j++ )
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue