freetype-commit
[Top][All Lists]
Advanced

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

[freetype2-demos] master 9c0f900: * src/ftcommon.c (FTDemo_Draw_Header):


From: Werner Lemberg
Subject: [freetype2-demos] master 9c0f900: * src/ftcommon.c (FTDemo_Draw_Header): Show non-trivial face index.
Date: Wed, 10 Aug 2022 22:38:13 -0400 (EDT)

branch: master
commit 9c0f900f8833952010bc6dba1c6179001c321f97
Author: Alexei Podtelezhnikov <apodtele@gmail.com>
Commit: Alexei Podtelezhnikov <apodtele@gmail.com>

    * src/ftcommon.c (FTDemo_Draw_Header): Show non-trivial face index.
    
    This is a useful hint if a file contains multiple faces.
---
 src/ftcommon.c | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/src/ftcommon.c b/src/ftcommon.c
index 4873c91..cc5a318 100644
--- a/src/ftcommon.c
+++ b/src/ftcommon.c
@@ -1145,7 +1145,7 @@
     const char*  encoding;
 
     int          line = 0;
-    int          x;
+    int          x, y;
 
 
     error = FTC_Manager_LookupFace( handle->cache_manager,
@@ -1160,16 +1160,19 @@
 
     /* font and file name */
     strbuf_init( buf, buffer, sizeof ( buffer ) );
-    x = strbuf_format( buf, "%.50s %.50s", face->family_name,
-                       face->style_name );
+    x = strbuf_format( buf, "%.50s %.50s",
+                       face->family_name, face->style_name );
     grWriteCellString( display->bitmap, 0, line * HEADER_HEIGHT,
                        strbuf_value( buf ), display->fore_color );
 
     basename = ft_basename( handle->current_font->filepathname );
-    x = display->bitmap->width - 8 * (int)strlen( basename ) > 8 * x + 8 ?
-        display->bitmap->width - 8 * (int)strlen( basename ) : 8 * x + 8;
+    strbuf_reset( buf );
+    y = strbuf_format( buf, face->num_faces > 1 ? "%.50s:%ld" : "%.50s",
+                       basename, face->face_index );
+    x = display->bitmap->width - 8 * y > 8 * x + 8 ?
+        display->bitmap->width - 8 * y : 8 * x + 8;
     grWriteCellString( display->bitmap, x, line++ * HEADER_HEIGHT,
-                       basename, display->fore_color );
+                       strbuf_value( buf ), display->fore_color );
 
     /* ppem, pt and dpi, instance */
     ppem = FT_IS_SCALABLE( face ) ? FT_MulFix( face->units_per_EM,



reply via email to

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