[truetype] Fix handling of phantom points in composite glyphs.
Problem reported by Nigel Tao <nigeltao@golang.org>. This is a follow-up commit to the previous one. * src/truetype/ttgload.c (load_truetype_glyph): Call `tt_get_metrics' after loading the glyph header.
This commit is contained in:
parent
7e4b0fbfdd
commit
5e225b7c15
10
ChangeLog
10
ChangeLog
@ -1,3 +1,13 @@
|
||||
2013-11-06 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
[truetype] Fix handling of phantom points in composite glyphs.
|
||||
Problem reported by Nigel Tao <nigeltao@golang.org>.
|
||||
|
||||
This is a follow-up commit to the previous one.
|
||||
|
||||
* src/truetype/ttgload.c (load_truetype_glyph): Call
|
||||
`tt_get_metrics' after loading the glyph header.
|
||||
|
||||
2013-11-06 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
[truetype] Improve emulation of vertical metrics.
|
||||
|
@ -1387,8 +1387,6 @@
|
||||
y_scale = 0x10000L;
|
||||
}
|
||||
|
||||
tt_get_metrics( loader, glyph_index );
|
||||
|
||||
/* Set `offset' to the start of the glyph relative to the start of */
|
||||
/* the `glyf' table, and `byte_len' to the length of the glyph in */
|
||||
/* bytes. */
|
||||
@ -1448,7 +1446,15 @@
|
||||
|
||||
/* read glyph header first */
|
||||
error = face->read_glyph_header( loader );
|
||||
if ( error || header_only )
|
||||
if ( error )
|
||||
goto Exit;
|
||||
|
||||
/* the metrics must be computed after loading the glyph header */
|
||||
/* since we need the glyph's `yMax' value in case the vertical */
|
||||
/* metrics must be emulated */
|
||||
tt_get_metrics( loader, glyph_index );
|
||||
|
||||
if ( header_only )
|
||||
goto Exit;
|
||||
}
|
||||
|
||||
@ -1459,6 +1465,8 @@
|
||||
loader->bbox.yMin = 0;
|
||||
loader->bbox.yMax = 0;
|
||||
|
||||
tt_get_metrics( loader, glyph_index );
|
||||
|
||||
if ( header_only )
|
||||
goto Exit;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user