[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[freetype2-demos] Harmony 5812aef: [ftview] Set up `FT_Library_SetLcdGeo
From: |
Alexei Podtelezhnikov |
Subject: |
[freetype2-demos] Harmony 5812aef: [ftview] Set up `FT_Library_SetLcdGeometry' testing. |
Date: |
Tue, 1 May 2018 22:42:53 -0400 (EDT) |
branch: Harmony
commit 5812aefebb7f61eea80422966c6aa8ce5204da57
Author: Alexei Podtelezhnikov <address@hidden>
Commit: Alexei Podtelezhnikov <address@hidden>
[ftview] Set up `FT_Library_SetLcdGeometry' testing.
Implement new command line option `-L x1,y1,x2,y2,x3,y3',
where RGB subpixel coordinates are given in 26.6 format
relative to the pixel center. For example, the usual
RGB stripes correspond to `-L -21,0,0,0,21,0'.
---
src/ftview.c | 24 +++++++++++++++++++++++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/src/ftview.c b/src/ftview.c
index c8c816b..dbda9e7 100644
--- a/src/ftview.c
+++ b/src/ftview.c
@@ -1647,6 +1647,7 @@
" -l mode Set start-up rendering mode (0 <= mode <= %d).\n",
N_LCD_IDXS - 1 );
fprintf( stderr,
+ " -L N,... Specify LCD geometry by 6 comma-sepatated values.\n"
" -p Preload file in memory to simulate memory-mapping.\n"
"\n"
" -v Show version.\n"
@@ -1668,7 +1669,7 @@
while ( 1 )
{
- option = getopt( *argc, *argv, "e:f:h:l:m:pr:vw:" );
+ option = getopt( *argc, *argv, "e:f:h:L:l:m:pr:vw:" );
if ( option == -1 )
break;
@@ -1700,6 +1701,27 @@
handle->lcd_mode = lcd_modes[status.lcd_idx];
break;
+ case 'L':
+ {
+ int i, buf[6];
+
+
+ i = sscanf( optarg, "%d,%d,%d,%d,%d,%d",
+ buf, buf + 1, buf + 2, buf + 3, buf + 4, buf + 5 );
+ if ( i == 6 &&
+ FT_Library_SetLcdGeometry( NULL, NULL ) !=
+ FT_Err_Unimplemented_Feature )
+ {
+ FT_Vector sub[3] = { { buf[0], buf[1] },
+ { buf[2], buf[3] },
+ { buf[4], buf[5] } };
+
+
+ FT_Library_SetLcdGeometry( handle->library, sub );
+ }
+ }
+ break;
+
case 'm':
Text = optarg;
status.render_mode = RENDER_MODE_TEXT;
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [freetype2-demos] Harmony 5812aef: [ftview] Set up `FT_Library_SetLcdGeometry' testing.,
Alexei Podtelezhnikov <=