ReactOS 0.4.16-dev-1946-g52006dd
ftlcdfil.c File Reference
#include <ft2build.h>
Include dependency graph for ftlcdfil.c:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

 ft_lcd_padding (FT_BBox *cbox, FT_GlyphSlot slot, FT_Render_Mode mode)
 
 FT_Library_SetLcdFilterWeights (FT_Library library, unsigned char *weights)
 
 FT_Library_SetLcdFilter (FT_Library library, FT_LcdFilter filter)
 
 FT_Library_SetLcdGeometry (FT_Library library, FT_Vector sub[3])
 

Function Documentation

◆ ft_lcd_padding()

ft_lcd_padding ( FT_BBox cbox,
FT_GlyphSlot  slot,
FT_Render_Mode  mode 
)

Definition at line 377 of file ftlcdfil.c.

380 {
381 FT_Vector* sub = slot->library->lcd_geometry;
382
383 if ( mode == FT_RENDER_MODE_LCD )
384 {
385 cbox->xMin -= FT_MAX( FT_MAX( sub[0].x, sub[1].x ), sub[2].x );
386 cbox->xMax -= FT_MIN( FT_MIN( sub[0].x, sub[1].x ), sub[2].x );
387 cbox->yMin -= FT_MAX( FT_MAX( sub[0].y, sub[1].y ), sub[2].y );
388 cbox->yMax -= FT_MIN( FT_MIN( sub[0].y, sub[1].y ), sub[2].y );
389 }
390 else if ( mode == FT_RENDER_MODE_LCD_V )
391 {
392 cbox->xMin -= FT_MAX( FT_MAX( sub[0].y, sub[1].y ), sub[2].y );
393 cbox->xMax -= FT_MIN( FT_MIN( sub[0].y, sub[1].y ), sub[2].y );
394 cbox->yMin += FT_MIN( FT_MIN( sub[0].x, sub[1].x ), sub[2].x );
395 cbox->yMax += FT_MAX( FT_MAX( sub[0].x, sub[1].x ), sub[2].x );
396 }
397 }
@ FT_RENDER_MODE_LCD_V
Definition: freetype.h:3260
@ FT_RENDER_MODE_LCD
Definition: freetype.h:3259
#define FT_MIN(a, b)
Definition: ftobjs.h:70
#define FT_MAX(a, b)
Definition: ftobjs.h:71
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLenum mode
Definition: glext.h:6217
FT_Pos xMin
Definition: ftimage.h:121
FT_Pos yMax
Definition: ftimage.h:122
FT_Pos yMin
Definition: ftimage.h:121
FT_Pos xMax
Definition: ftimage.h:122
Definition: vfat.h:185

Referenced by ft_glyphslot_preset_bitmap().

◆ FT_Library_SetLcdFilter()

FT_Library_SetLcdFilter ( FT_Library  library,
FT_LcdFilter  filter 
)

Definition at line 412 of file ftlcdfil.c.

414 {
416 FT_UNUSED( filter );
417
418 return FT_THROW( Unimplemented_Feature );
419 }
FT_Library library
Definition: cffdrivr.c:661
#define FT_UNUSED(arg)
Definition: ftconfig.h:100
#define FT_THROW(e)
Definition: ftdebug.h:241
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter
Definition: glext.h:7005

Referenced by ft_smooth_init().

◆ FT_Library_SetLcdFilterWeights()

FT_Library_SetLcdFilterWeights ( FT_Library  library,
unsigned char weights 
)

Definition at line 401 of file ftlcdfil.c.

403 {
406
407 return FT_THROW( Unimplemented_Feature );
408 }
const GLbyte * weights
Definition: glext.h:6523

◆ FT_Library_SetLcdGeometry()

FT_Library_SetLcdGeometry ( FT_Library  library,
FT_Vector  sub[3] 
)

Definition at line 425 of file ftlcdfil.c.

427 {
428 if ( !library )
429 return FT_THROW( Invalid_Library_Handle );
430
431 if ( !sub )
432 return FT_THROW( Invalid_Argument );
433
434 ft_memcpy( library->lcd_geometry, sub, 3 * sizeof( FT_Vector ) );
435
436 return FT_THROW( Unimplemented_Feature );
437 }
#define ft_memcpy
Definition: ftstdlib.h:82
FT_Vector lcd_geometry[3]
Definition: ftobjs.h:916