shithub: freetype+ttf2subf

Download patch

ref: 106eaf1dbb23223e4e72d27a81e7e035268a3a87
parent: 1b5267dad193dcbc5653bc0e11586ec71cb4d4a0
author: Werner Lemberg <[email protected]>
date: Thu May 3 03:07:47 EDT 2007

* src/base/ftobjs.c (FT_Set_Char_Size): Simplify code.
* include/freetype/freetype.h (FT_Set_Char_Size): Update
documentation.

git/fs: mount .git/fs: mount/attach disallowed
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2007-05-03  Werner Lemberg  <[email protected]>
+
+	* src/base/ftobjs.c (FT_Set_Char_Size): Simplify code.
+	* include/freetype/freetype.h (FT_Set_Char_Size): Update
+	documentation.
+
 2007-04-28  Victor Stinner  <[email protected]>
 
 	* src/sfnt/sfobjs.c (sfnt_load_face): Check error code after loading
--- a/include/freetype/freetype.h
+++ b/include/freetype/freetype.h
@@ -2111,9 +2111,16 @@
   /*    FreeType error code.  0 means success.                             */
   /*                                                                       */
   /* <Note>                                                                */
+  /*    If either the character width or height is zero, it is set equal   */
+  /*    to the other value.                                                */
+  /*                                                                       */
   /*    If either the horizontal or vertical resolution is zero, it is set */
-  /*    to a default value of 72dpi.                                       */
+  /*    equal to the other value.                                          */
   /*                                                                       */
+  /*    A character width or height smaller than 1pt is set to 1pt; if     */
+  /*    both resolution values are zero, they are set to 72dpi.            */
+  /*                                                                       */
+
   FT_EXPORT( FT_Error )
   FT_Set_Char_Size( FT_Face     face,
                     FT_F26Dot6  char_width,
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -2435,11 +2435,14 @@
     if ( char_height < 1 * 64 )
       char_height = 1 * 64;
 
+    if ( !horz_resolution )
+      horz_resolution = vert_resolution = 72;
+
     req.type           = FT_SIZE_REQUEST_TYPE_NOMINAL;
     req.width          = char_width;
     req.height         = char_height;
-    req.horiResolution = ( horz_resolution ) ? horz_resolution : 72;
-    req.vertResolution = ( vert_resolution ) ? vert_resolution : 72;
+    req.horiResolution = horz_resolution;
+    req.vertResolution = vert_resolution;
 
     return FT_Request_Size( face, &req );
   }