freetype-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[freetype2] parthw-wip ad0453f 4/4: [gf, pk] Improve `attach_file' funct


From: Parth Wazurkar
Subject: [freetype2] parthw-wip ad0453f 4/4: [gf, pk] Improve `attach_file' functions.
Date: Sun, 5 Aug 2018 07:33:18 -0400 (EDT)

branch: parthw-wip
commit ad0453fd392c914db66c1737bbf4721ddc76571c
Author: Parth Wazurkar <address@hidden>
Commit: Parth Wazurkar <address@hidden>

    [gf, pk] Improve `attach_file' functions.
---
 src/gf/gfdrivr.c | 51 +++++++++++++++++++++++++++------------------------
 src/pk/pkdrivr.c | 50 ++++++++++++++++++++++++++------------------------
 2 files changed, 53 insertions(+), 48 deletions(-)

diff --git a/src/gf/gfdrivr.c b/src/gf/gfdrivr.c
index 5cebaee..a568dda 100644
--- a/src/gf/gfdrivr.c
+++ b/src/gf/gfdrivr.c
@@ -483,37 +483,40 @@
     FT_TRACE4(( "TFM_Read_Metrics: Invoking TFM_Service.\n" ));
 
     tfm = (TFM_Service)face->tfm;
-
-    /* Initialise TFM Service */
-    error = tfm->init( &parser,
+    if ( tfm->tfm_parser_funcs )
+    {
+      /* Initialise TFM Service */
+      error = tfm->tfm_parser_funcs->init( &parser,
                        memory,
                        stream );
 
-    if ( !error )
-    {
-      FT_TRACE4(( "TFM_Read_Metrics: Initialised tfm metric data.\n" ));
-      parser.FontInfo  = fi;
-      parser.user_data = gf_glyph;
-
-      error = tfm->parse_metrics( &parser );
-      if( !error )
-        FT_TRACE4(( "TFM_Read_Metrics: parsing TFM metric information done.\n" 
));
-
-      FT_TRACE6(( "TFM_Read_Metrics: TFM Metric Information:\n"
-                  "                  Check Sum  : %ld\n"
-                  "                  Design Size: %ld\n"
-                  "                  Begin Char : %d\n"
-                  "                  End Char   : %d\n"
-                  "                  font_bbx_w : %d\n"
-                  "                  font_bbx_h : %d\n"
-                  "                  slant      : %d\n", parser.FontInfo->cs, 
parser.FontInfo->design_size, parser.FontInfo->begin_char,
-                                                         
parser.FontInfo->end_char, parser.FontInfo->font_bbx_w,
-                                                         
parser.FontInfo->font_bbx_h, parser.FontInfo->slant ));
-      tfm->done( &parser );
+      if ( !error )
+      {
+        FT_TRACE4(( "TFM_Read_Metrics: Initialised tfm metric data.\n" ));
+        parser.FontInfo  = fi;
+        parser.user_data = gf_glyph;
+
+        error = tfm->tfm_parser_funcs->parse_metrics( &parser );
+        if( !error )
+          FT_TRACE4(( "TFM_Read_Metrics: parsing TFM metric information 
done.\n" ));
+
+        FT_TRACE6(( "TFM_Read_Metrics: TFM Metric Information:\n"
+                    "                  Check Sum  : %ld\n"
+                    "                  Design Size: %ld\n"
+                    "                  Begin Char : %d\n"
+                    "                  End Char   : %d\n"
+                    "                  font_bbx_w : %d\n"
+                    "                  font_bbx_h : %d\n"
+                    "                  slant      : %d\n", 
parser.FontInfo->cs, parser.FontInfo->design_size, parser.FontInfo->begin_char,
+                                                           
parser.FontInfo->end_char, parser.FontInfo->font_bbx_w,
+                                                           
parser.FontInfo->font_bbx_h, parser.FontInfo->slant ));
+        tfm->tfm_parser_funcs->done( &parser );
+      }
     }
 
     if ( !error )
     {
+      printf("Hi I reached here\n");
       /* Modify GF_Glyph data according to TFM metric values */
 
       /*face->gf_glyph->font_bbx_w = fi->font_bbx_w;
diff --git a/src/pk/pkdrivr.c b/src/pk/pkdrivr.c
index 306d29d..12056f9 100644
--- a/src/pk/pkdrivr.c
+++ b/src/pk/pkdrivr.c
@@ -479,33 +479,35 @@
     FT_TRACE4(( "TFM_Read_Metrics: Invoking TFM_Service.\n" ));
 
     tfm = (TFM_Service)face->tfm;
-
-    /* Initialise TFM Service */
-    error = tfm->init( &parser,
+    if ( tfm->tfm_parser_funcs )
+    {
+      /* Initialise TFM Service */
+      error = tfm->tfm_parser_funcs->init( &parser,
                        memory,
                        stream );
 
-    if ( !error )
-    {
-      FT_TRACE4(( "TFM_Read_Metrics: Initialised tfm metric data.\n" ));
-      parser.FontInfo  = fi;
-      parser.user_data = pk_glyph;
-
-      error = tfm->parse_metrics( &parser );
-      if( !error )
-        FT_TRACE4(( "TFM_Read_Metrics: parsing TFM metric information done.\n" 
));
-
-      FT_TRACE6(( "TFM_Read_Metrics: TFM Metric Information:\n"
-                  "                  Check Sum  : %ld\n"
-                  "                  Design Size: %ld\n"
-                  "                  Begin Char : %d\n"
-                  "                  End Char   : %d\n"
-                  "                  font_bbx_w : %d\n"
-                  "                  font_bbx_h : %d\n"
-                  "                  slant      : %d\n", parser.FontInfo->cs, 
parser.FontInfo->design_size, parser.FontInfo->begin_char,
-                                                         
parser.FontInfo->end_char, parser.FontInfo->font_bbx_w,
-                                                         
parser.FontInfo->font_bbx_h, parser.FontInfo->slant ));
-      tfm->done( &parser );
+      if ( !error )
+      {
+        FT_TRACE4(( "TFM_Read_Metrics: Initialised tfm metric data.\n" ));
+        parser.FontInfo  = fi;
+        parser.user_data = pk_glyph;
+
+        error = tfm->tfm_parser_funcs->parse_metrics( &parser );
+        if( !error )
+          FT_TRACE4(( "TFM_Read_Metrics: parsing TFM metric information 
done.\n" ));
+
+        FT_TRACE6(( "TFM_Read_Metrics: TFM Metric Information:\n"
+                    "                  Check Sum  : %ld\n"
+                    "                  Design Size: %ld\n"
+                    "                  Begin Char : %d\n"
+                    "                  End Char   : %d\n"
+                    "                  font_bbx_w : %d\n"
+                    "                  font_bbx_h : %d\n"
+                    "                  slant      : %d\n", 
parser.FontInfo->cs, parser.FontInfo->design_size, parser.FontInfo->begin_char,
+                                                           
parser.FontInfo->end_char, parser.FontInfo->font_bbx_w,
+                                                           
parser.FontInfo->font_bbx_h, parser.FontInfo->slant ));
+        tfm->tfm_parser_funcs->done( &parser );
+      }
     }
 
     if ( !error )



reply via email to

[Prev in Thread] Current Thread [Next in Thread]