]> git.eshelyaron.com Git - emacs.git/commitdiff
(xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to the pattern.
authorKenichi Handa <handa@m17n.org>
Fri, 20 Jun 2008 12:28:22 +0000 (12:28 +0000)
committerKenichi Handa <handa@m17n.org>
Fri, 20 Jun 2008 12:28:22 +0000 (12:28 +0000)
src/ChangeLog
src/xftfont.c

index f005d1bf702545a1af8516c08fc5a5fc67a93959..52e8901ff87116e67d5fb43c06534ce1baea7c95 100644 (file)
@@ -1,5 +1,8 @@
 2008-06-20  Kenichi Handa  <handa@m17n.org>
 
+       * xftfont.c (xftfont_open): Add FOUNDRY, SPACING, DPI, SCALABLE to
+       the pattern.
+
        * fontset.c (fontset_from_font): Copy font_spec before changing
        the elements.
 
index 7d5bf245cb6d3ade28737722235ee3dd82d29aac..aa6c270e64748577aa1856ab7aa36c265af52de6 100644 (file)
@@ -219,6 +219,23 @@ xftfont_open (f, entity, pixel_size)
   val = AREF (entity, FONT_FAMILY_INDEX);
   if (! NILP (val))
     FcPatternAddString (pat, FC_FAMILY, (FcChar8 *) SDATA (SYMBOL_NAME (val)));
+  val = AREF (entity, FONT_FOUNDRY_INDEX);
+  if (! NILP (val))
+    FcPatternAddString (pat, FC_FOUNDRY, (FcChar8 *) SDATA (SYMBOL_NAME (val)));
+  val = AREF (entity, FONT_SPACING_INDEX);
+  if (! NILP (val))
+    FcPatternAddInteger (pat, FC_SPACING, XINT (val));
+  val = AREF (entity, FONT_DPI_INDEX);
+  if (! NILP (val))
+    {
+      double dbl = XINT (val);
+
+      FcPatternAddDouble (pat, FC_DPI, dbl);
+    }
+  val = AREF (entity, FONT_AVGWIDTH_INDEX);
+  if (INTEGERP (val) && XINT (val) == 0)
+    FcPatternAddBool (pat, FC_SCALABLE, FcTrue);
+
   for (tail = AREF (entity, FONT_EXTRA_INDEX); CONSP (tail); tail = XCDR (tail))
     {
       Lisp_Object key, val;