[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[freetype2] master b11074cf6: [svg] Set linear advances when loading SVG
From: |
Werner Lemberg |
Subject: |
[freetype2] master b11074cf6: [svg] Set linear advances when loading SVG glyphs |
Date: |
Tue, 7 Jun 2022 08:58:56 -0400 (EDT) |
branch: master
commit b11074cf6dce78d0bc79ff7996dec70ca3abe4a9
Author: Ben Wagner <bungeman@chromium.org>
Commit: Ben Wagner <bungeman@chromium.org>
[svg] Set linear advances when loading SVG glyphs
* include/freetype/freetype.h (FT_GlyphSlotRec_): update doc
* src/cff/cffgload.c (cff_slot_load): do it
* src/truetype/ttgload.c (TT_Load_Glyph): do it
Fixes: #1156
---
include/freetype/freetype.h | 4 ++--
src/cff/cffgload.c | 3 +++
src/truetype/ttgload.c | 3 +++
3 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/include/freetype/freetype.h b/include/freetype/freetype.h
index aa1a4fe38..90e08881b 100644
--- a/include/freetype/freetype.h
+++ b/include/freetype/freetype.h
@@ -1892,13 +1892,13 @@ FT_BEGIN_HEADER
* The advance width of the unhinted glyph. Its value is expressed in
* 16.16 fractional pixels, unless @FT_LOAD_LINEAR_DESIGN is set when
* loading the glyph. This field can be important to perform correct
- * WYSIWYG layout. Only relevant for outline glyphs.
+ * WYSIWYG layout. Only relevant for scalable glyphs.
*
* linearVertAdvance ::
* The advance height of the unhinted glyph. Its value is expressed in
* 16.16 fractional pixels, unless @FT_LOAD_LINEAR_DESIGN is set when
* loading the glyph. This field can be important to perform correct
- * WYSIWYG layout. Only relevant for outline glyphs.
+ * WYSIWYG layout. Only relevant for scalable glyphs.
*
* advance ::
* This shorthand is, depending on @FT_LOAD_IGNORE_TRANSFORM, the
diff --git a/src/cff/cffgload.c b/src/cff/cffgload.c
index 7586b886f..d8fc31857 100644
--- a/src/cff/cffgload.c
+++ b/src/cff/cffgload.c
@@ -404,6 +404,9 @@
&dummy,
&advanceY );
+ glyph->root.linearHoriAdvance = advanceX;
+ glyph->root.linearVertAdvance = advanceY;
+
advanceX =
(FT_UShort)FT_MulDiv( advanceX,
glyph->root.face->size->metrics.x_ppem,
diff --git a/src/truetype/ttgload.c b/src/truetype/ttgload.c
index 2ca63d65a..e2908d065 100644
--- a/src/truetype/ttgload.c
+++ b/src/truetype/ttgload.c
@@ -3005,6 +3005,9 @@
&topBearing,
&advanceY );
+ glyph->linearHoriAdvance = advanceX;
+ glyph->linearVertAdvance = advanceY;
+
advanceX = (FT_UShort)FT_MulDiv( advanceX,
glyph->face->size->metrics.x_ppem,
glyph->face->units_per_EM );
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [freetype2] master b11074cf6: [svg] Set linear advances when loading SVG glyphs,
Werner Lemberg <=