shithub: freetype+ttf2subf

Download patch

ref: d77cd8ce7ee8ae3adf44317cda200c2eb0ca6d0f
parent: efaf5abcf8e18833e426a3718fe372ffa9249e57
author: Werner Lemberg <wl@gnu.org>
date: Wed Aug 26 20:10:56 EDT 2009

Fix rendering of horizontally compressed CFFs.
Bug reported by Ivan Nincic <inincic@pdftron.com>.

* src/cff/cffgload.c (cff_slot_load): Thinko: Check `xx' element of
`font_matrix' also.

* docs/CHANGES: Updated.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2009-08-25  Werner Lemberg  <wl@gnu.org>
+
+	Fix rendering of horizontally compressed CFFs.
+	Bug reported by Ivan Nincic <inincic@pdftron.com>.
+
+	* src/cff/cffgload.c (cff_slot_load): Thinko: Check `xx' element of
+	`font_matrix' also.
+
+	* docs/CHANGES: Updated.
+
 2009-08-03  suyu0925@gmail.com
 
 	Don't call `ft_fseek' every time when executing `ft_fread'.
--- a/docs/CHANGES
+++ b/docs/CHANGES
@@ -12,6 +12,10 @@
       to avoid serious rounding issues if non-integral coordinates are
       encountered.
 
+    - Horizontally  condensed CFF  fonts (using the font  matrix) were
+      rendered  incorrectly.   This  bug  has  been  introduced  after
+      release 2.3.5.
+
 
   II. IMPORTANT CHANGES
 
--- a/src/cff/cffgload.c
+++ b/src/cff/cffgload.c
@@ -2765,8 +2765,8 @@
 
         glyph->root.outline.flags |= FT_OUTLINE_REVERSE_FILL;
 
-        /* apply the font matrix -- `xx' has already been normalized */
-        if ( !( font_matrix.yy == 0x10000L &&
+        if ( !( font_matrix.xx == 0x10000L &&
+                font_matrix.yy == 0x10000L &&
                 font_matrix.xy == 0        &&
                 font_matrix.yx == 0        ) )
           FT_Outline_Transform( &glyph->root.outline, &font_matrix );
--