freetype-commit
[Top][All Lists]
Advanced

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

[freetype2-demos] master 56dcc2c 3/3: [ftmulti] Display up to 15 axes.


From: Werner Lemberg
Subject: [freetype2-demos] master 56dcc2c 3/3: [ftmulti] Display up to 15 axes.
Date: Sun, 5 Feb 2023 10:23:44 -0500 (EST)

branch: master
commit 56dcc2c3617fdeced487c2cb4ce56852a9232124
Author: Werner Lemberg <wl@gnu.org>
Commit: Werner Lemberg <wl@gnu.org>

    [ftmulti] Display up to 15 axes.
    
    Due to the support of the 'avar' version 2 OpenType extension it is expected
    that the number of axes in many fonts will increase because adding 'virtual
    axes' is cheap now.
    
    * src/ftmulti.c (MAX_MM_AXES): Set to 15.
    (Help): Updated.
    (Process_Event): Handle keys '7890-=' for axes 6-8, '!@#$%^' for axes 9-11,
    and '&*()_+' for axes 12-14.
---
 src/ftmulti.c | 104 ++++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 file changed, 97 insertions(+), 7 deletions(-)

diff --git a/src/ftmulti.c b/src/ftmulti.c
index e1bd0fb..473a8db 100644
--- a/src/ftmulti.c
+++ b/src/ftmulti.c
@@ -38,7 +38,7 @@
 #define  HEADER_HEIGHT  12
 
 #define  MAXPTSIZE    500               /* dtp */
-#define  MAX_MM_AXES    6
+#define  MAX_MM_AXES   15
 
   /* definitions in ftcommon.c */
   unsigned int
@@ -570,12 +570,12 @@
     grWriteln( "F9, F10     adjust index by 100" );
     grWriteln( "F11, F12    adjust index by 1000" );
     grLn();
-    grWriteln( "F1, F2      adjust first axis" );
-    grWriteln( "F3, F4      adjust second axis" );
-    grWriteln( "F5, F6      adjust third axis" );
-    grWriteln( "1, 2        adjust fourth axis" );
-    grWriteln( "3, 4        adjust fifth axis" );
-    grWriteln( "5, 6        adjust sixth axis" );
+    grWriteln( "F1, F2  adjust axis 0    7, 8  adjust axis  6    &, *  adjust 
axis 12" );
+    grWriteln( "F3, F4  adjust axis 1    9, 0  adjust axis  7    (, )  adjust 
axis 13" );
+    grWriteln( "F5, F6  adjust axis 2    -, =  adjust axis  8    _, +  adjust 
axis 14" );
+    grWriteln( "1, 2    adjust axis 3    !, @  adjust axis  9" );
+    grWriteln( "3, 4    adjust axis 4    #, $  adjust axis 10" );
+    grWriteln( "5, 6    adjust axis 5    %, ^  adjust axis 11" );
     grLn();
     grWriteln( "i, I        adjust axis range increment" );
     grLn();
@@ -754,6 +754,96 @@
       axis = 5;
       goto Do_Axis;
 
+    case grKEY( '7' ):
+      i = -increment;
+      axis = 6;
+      goto Do_Axis;
+
+    case grKEY( '8' ):
+      i = increment;
+      axis = 6;
+      goto Do_Axis;
+
+    case grKEY( '9' ):
+      i = -increment;
+      axis = 7;
+      goto Do_Axis;
+
+    case grKEY( '0' ):
+      i = increment;
+      axis = 7;
+      goto Do_Axis;
+
+    case grKEY( '-' ):
+      i = -increment;
+      axis = 8;
+      goto Do_Axis;
+
+    case grKEY( '=' ):
+      i = increment;
+      axis = 8;
+      goto Do_Axis;
+
+    case grKEY( '!' ):
+      i = -increment;
+      axis = 9;
+      goto Do_Axis;
+
+    case grKEY( '@' ):
+      i = increment;
+      axis = 9;
+      goto Do_Axis;
+
+    case grKEY( '#' ):
+      i = -increment;
+      axis = 10;
+      goto Do_Axis;
+
+    case grKEY( '$' ):
+      i = increment;
+      axis = 10;
+      goto Do_Axis;
+
+    case grKEY( '%' ):
+      i = -increment;
+      axis = 11;
+      goto Do_Axis;
+
+    case grKEY( '^' ):
+      i = increment;
+      axis = 11;
+      goto Do_Axis;
+
+    case grKEY( '&' ):
+      i = -increment;
+      axis = 12;
+      goto Do_Axis;
+
+    case grKEY( '*' ):
+      i = increment;
+      axis = 12;
+      goto Do_Axis;
+
+    case grKEY( '(' ):
+      i = -increment;
+      axis = 13;
+      goto Do_Axis;
+
+    case grKEY( ')' ):
+      i = increment;
+      axis = 13;
+      goto Do_Axis;
+
+    case grKEY( '_' ):
+      i = -increment;
+      axis = 14;
+      goto Do_Axis;
+
+    case grKEY( '+' ):
+      i = increment;
+      axis = 14;
+      goto Do_Axis;
+
     /* scaling related keys */
 
     case grKeyPageUp:



reply via email to

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