freetype-commit
[Top][All Lists]
Advanced

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

[freetype2-demos] master 25491e9: * src/ftstring.c (write_header): Alway


From: Werner Lemberg
Subject: [freetype2-demos] master 25491e9: * src/ftstring.c (write_header): Always report kerning info.
Date: Sat, 28 Jan 2023 23:04:56 -0500 (EST)

branch: master
commit 25491e9a553f2b5b903f391db8fac97714e5ef85
Author: Alexei Podtelezhnikov <apodtele@gmail.com>
Commit: Alexei Podtelezhnikov <apodtele@gmail.com>

    * src/ftstring.c (write_header): Always report kerning info.
---
 src/ftstring.c | 32 ++++++++++++++++++--------------
 1 file changed, 18 insertions(+), 14 deletions(-)

diff --git a/src/ftstring.c b/src/ftstring.c
index a876393..d2eb76b 100644
--- a/src/ftstring.c
+++ b/src/ftstring.c
@@ -586,24 +586,10 @@
 
     case grKEY( 'k' ):
       sc->kerning_mode = ( sc->kerning_mode + 1 ) % N_KERNING_MODES;
-      status.header =
-        sc->kerning_mode == KERNING_MODE_SMART
-        ? "pair kerning and side bearing correction is now active"
-        : sc->kerning_mode == KERNING_MODE_NORMAL
-          ? "pair kerning is now active"
-          : "pair kerning is now ignored";
       goto String;
 
     case grKEY( 't' ):
       sc->kerning_degree = ( sc->kerning_degree + 1 ) % N_KERNING_DEGREES;
-      status.header =
-        sc->kerning_degree == KERNING_DEGREE_NONE
-        ? "no track kerning"
-        : sc->kerning_degree == KERNING_DEGREE_LIGHT
-          ? "light track kerning active"
-          : sc->kerning_degree == KERNING_DEGREE_MEDIUM
-            ? "medium track kerning active"
-            : "tight track kerning active";
       goto String;
 
     case grKeySpace:
@@ -673,9 +659,27 @@
   static void
   write_header( FT_Error  error_code )
   {
+    FTDemo_String_Context*  sc = &status.sc;
+
+    char  kern[40];
+    int   x;
+
+
     FTDemo_Draw_Header( handle, display, status.ptsize, status.res,
                         -1, error_code );
 
+    /* describe kerning */
+    x = sprintf( kern, "%s pairs, %s track",
+             sc->kerning_mode == KERNING_MODE_SMART  ? "adjusted" :
+             sc->kerning_mode == KERNING_MODE_NORMAL ? "" : "no",
+             sc->kerning_degree == KERNING_DEGREE_TIGHT  ? "tight" :
+             sc->kerning_degree == KERNING_DEGREE_MEDIUM ? "medium" :
+             sc->kerning_degree == KERNING_DEGREE_LIGHT  ? "light" : "no" );
+
+    grWriteCellString( display->bitmap,
+                       display->bitmap->width - 8 * x, 3 * HEADER_HEIGHT,
+                       kern, display->fore_color );
+
     if ( status.header )
     {
       grWriteCellString( display->bitmap, 0, 3 * HEADER_HEIGHT,



reply via email to

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