[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[freetype2-demos] master 78bab20 1/2: [ftgrid] Implement embedded bitmap
From: |
Werner Lemberg |
Subject: |
[freetype2-demos] master 78bab20 1/2: [ftgrid] Implement embedded bitmap toggle. |
Date: |
Fri, 4 Feb 2022 22:47:55 -0500 (EST) |
branch: master
commit 78bab20f1287976e268bf273f961a83f79843491
Author: Alexei Podtelezhnikov <apodtele@gmail.com>
Commit: Alexei Podtelezhnikov <apodtele@gmail.com>
[ftgrid] Implement embedded bitmap toggle.
* src/ftgrid.c (grid_status_draw_outline): Undo the last change.
(Process_Event): Implement the embedded bitmap toggle and shift
some other toggle keys for consistency.
(event_help, main): Updated.
---
src/ftgrid.c | 46 +++++++++++++++++++++++++---------------------
1 file changed, 25 insertions(+), 21 deletions(-)
diff --git a/src/ftgrid.c b/src/ftgrid.c
index adbaebb..f36f173 100644
--- a/src/ftgrid.c
+++ b/src/ftgrid.c
@@ -515,7 +515,6 @@
FT_Size size;
FT_GlyphSlot slot;
FT_UInt glyph_idx;
- FT_Int32 load_flags;
int scale = (int)st->scale;
int ox = st->x_origin;
int oy = st->y_origin;
@@ -533,11 +532,7 @@
_af_debug_disable_blue_hints = !st->do_blue_hints;
#endif
- load_flags = handle->load_flags;
- if ( !( st->work & DO_BITMAP ) )
- load_flags |= FT_LOAD_NO_BITMAP;
-
- if ( FT_Load_Glyph( size->face, glyph_idx, load_flags ) )
+ if ( FT_Load_Glyph( size->face, glyph_idx, handle->load_flags ) )
return;
slot = size->face->glyph;
@@ -839,7 +834,7 @@
grWriteln( "F1, ? display this help screen if autohinting:
" );
grWriteln( " H toggle
horiz. hinting " );
grWriteln( "i, k move grid up/down V toggle
vert. hinting " );
- grWriteln( "j, l move grid left/right B toggle
blue zone hinting" );
+ grWriteln( "j, l move grid left/right Z toggle
blue zone hinting" );
grWriteln( "PgUp, PgDn zoom in/out grid s toggle
segment drawing " );
grWriteln( "SPC reset zoom and position
(unfitted, with blues) " );
grWriteln( " 1 dump edge
hints " );
@@ -855,19 +850,19 @@
grWriteln( " H cycle
through hinting " );
grWriteln( "Left, Right adjust index by 1 engines
(if available) " );
grWriteln( "F7, F8 adjust index by 16
" );
- grWriteln( "F9, F10 adjust index by 256 b toggle
bitmap " );
- grWriteln( "F11, F12 adjust index by 4096 d toggle dot
display " );
+ grWriteln( "F9, F10 adjust index by 256 b toggle
embedded bitmap " );
+ grWriteln( "F11, F12 adjust index by 4096 B toggle
bitmap display " );
grWriteln( " o toggle
outline display " );
- grWriteln( "h toggle hinting D toggle
dotnumber display" );
- grWriteln( "f toggle forced auto-
" );
- grWriteln( " hinting (if hinting) if Multiple Master or
GX font: " );
- grWriteln( "G toggle grid display F2 cycle
through axes " );
- grWriteln( "C change color palette F3, F4 adjust
current axis by " );
- grWriteln( " 1/50th of
its range " );
- grWriteln( "F5, F6 cycle through
" );
- grWriteln( " anti-aliasing modes P print PNG
file " );
- grWriteln( "L cycle through LCD q, ESC quit
ftgrid " );
- grWriteln( " filters" );
+ grWriteln( "h toggle hinting d toggle dot
display " );
+ grWriteln( "f toggle forced auto- D toggle
dotnumber display" );
+ grWriteln( " hinting (if hinting)
" );
+ grWriteln( "G toggle grid display if Multiple Master or
GX font: " );
+ grWriteln( "C change color palette F2 cycle
through axes " );
+ grWriteln( " F3, F4 adjust
current axis by " );
+ grWriteln( "F5, F6 cycle through 1/50th of
its range " );
+ grWriteln( " anti-aliasing modes
" );
+ grWriteln( "L cycle through LCD P print PNG
file " );
+ grWriteln( " filters q, ESC quit
ftgrid " );
grLn();
grWriteln( "g, v adjust gamma value" );
/* |----------------------------------|
|----------------------------------| */
@@ -1372,6 +1367,14 @@
FTDemo_Update_Current_Flags( handle );
break;
+ case grKEY( 'b' ):
+ handle->use_sbits = !handle->use_sbits;
+ status.header = handle->use_sbits ? "embedded bitmaps are now on"
+ : "embedded bitmaps are now off";
+
+ FTDemo_Update_Current_Flags( handle );
+ break;
+
#ifdef FT_DEBUG_AUTOFIT
case grKEY( '1' ):
if ( handle->hinted &&
@@ -1464,7 +1467,7 @@
status.work ^= DO_OUTLINE;
break;
- case grKEY( 'b' ):
+ case grKEY( 'B' ):
status.work ^= DO_BITMAP;
if ( status.work & DO_BITMAP )
status.work ^= DO_GRAY_BITMAP;
@@ -1516,7 +1519,7 @@
status.header = "need autofit mode to toggle vertical hinting";
break;
- case grKEY( 'B' ):
+ case grKEY( 'Z' ):
if ( handle->autohint ||
handle->lcd_mode == LCD_MODE_LIGHT ||
handle->lcd_mode == LCD_MODE_LIGHT_SUBPIXEL )
@@ -1794,6 +1797,7 @@
/* initialize engine */
handle = FTDemo_New();
+ handle->use_sbits = 0;
grid_status_init( &status );
circle_init( handle, 128 );
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [freetype2-demos] master 78bab20 1/2: [ftgrid] Implement embedded bitmap toggle.,
Werner Lemberg <=