freetype-commit
[Top][All Lists]
Advanced

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

[freetype2-demos] master f1fd7352: * src/ftmulti.c (Render_All): Tighten


From: Werner Lemberg
Subject: [freetype2-demos] master f1fd7352: * src/ftmulti.c (Render_All): Tighten right margin.
Date: Tue, 7 Feb 2023 18:26:52 -0500 (EST)

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

    * src/ftmulti.c (Render_All): Tighten right margin.
---
 src/ftmulti.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/src/ftmulti.c b/src/ftmulti.c
index 30deb096..c2592110 100644
--- a/src/ftmulti.c
+++ b/src/ftmulti.c
@@ -282,6 +282,7 @@
   static void
   Clear_Display( void )
   {
+    /* fast black background */
     memset( bit->buffer, 0, (size_t)bit->rows *
                             (size_t)( bit->pitch < 0 ? -bit->pitch
                                                      : bit->pitch ) );
@@ -386,7 +387,7 @@
   Render_All( unsigned int  first_glyph,
               int           pt_size )
   {
-    FT_F26Dot6    start_x, start_y, step_y, x, y;
+    int           start_x, start_y, step_y, x, y, w;
     unsigned int  i;
 
 
@@ -421,11 +422,8 @@
         }
 #endif
 
-        Render_Glyph( x, y );
-
-        x += ( ( glyph->metrics.horiAdvance + 32 ) >> 6 ) + 1;
-
-        if ( x + size->metrics.x_ppem > bit->width )
+        w = ( ( glyph->metrics.horiAdvance + 32 ) >> 6 ) + 1;
+        if ( x + w > bit->width - 4 )
         {
           x  = start_x;
           y += step_y;
@@ -433,6 +431,9 @@
           if ( y >= bit->rows )
             return FT_Err_Ok;
         }
+
+        Render_Glyph( x, y );
+        x += w;
       }
       else
         Fail++;



reply via email to

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