shithub: freetype+ttf2subf

Download patch

ref: ebbb8b2e19d82e12bbf8856a5fba2efe8fb9defa
parent: 1656752ee5565ab166d1223953b4a4a57182c7a2
author: Werner Lemberg <[email protected]>
date: Tue Sep 6 12:28:57 EDT 2016

[type1] MM fonts support exactly zero named instances (#48748).

* src/type1/t1load.c (T1_Get_MM_Var): Set `num_namedstyles' to zero.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2016-09-06  Werner Lemberg  <[email protected]>
+
+	[type1] MM fonts support exactly zero named instances (#48748).
+
+	* src/type1/t1load.c (T1_Get_MM_Var): Set `num_namedstyles' to zero.
+
 2016-09-06  Jonathan Kew  <[email protected]>
 
 	[cff] Fix uninitialized memory.
--- a/include/freetype/ftmm.h
+++ b/include/freetype/ftmm.h
@@ -195,11 +195,15 @@
   /*                       (where every glyph could have a different       */
   /*                       number of designs).                             */
   /*                                                                       */
-  /*    num_namedstyles :: The number of named styles; only meaningful for */
-  /*                       GX that allows certain design coordinates to    */
-  /*                       have a string ID (in the `name' table)          */
-  /*                       associated with them.  The font can tell the    */
-  /*                       user that, for example, Weight=1.5 is `Bold'.   */
+  /*    num_namedstyles :: The number of named styles; a `named style' is  */
+  /*                       a tuple of design coordinates that has a string */
+  /*                       ID (in the `name' table) associated with it.    */
+  /*                       The font can tell the user that, for example,   */
+  /*                       [Weight=1.5,Width=1.1] is `Bold'.               */
+  /*                                                                       */
+  /*                       For Type 1 Multiple Masters fonts, this value   */
+  /*                       is always zero because the format does not      */
+  /*                       support named styles.                           */
   /*                                                                       */
   /*    axis            :: An axis descriptor table.                       */
   /*                       GX fonts contain slightly more data than MM.    */
--- a/src/type1/t1load.c
+++ b/src/type1/t1load.c
@@ -321,7 +321,7 @@
 
     mmvar->num_axis        = mmaster.num_axis;
     mmvar->num_designs     = mmaster.num_designs;
-    mmvar->num_namedstyles = ~0U;                        /* Does not apply */
+    mmvar->num_namedstyles = 0;                           /* Not supported */
     mmvar->axis            = (FT_Var_Axis*)&mmvar[1];
                                       /* Point to axes after MM_Var struct */
     mmvar->namedstyle      = NULL;