OLD | NEW |
1 /***************************************************************************/ | 1 /***************************************************************************/ |
2 /* */ | 2 /* */ |
3 /* ftlcdfil.h */ | 3 /* ftlcdfil.h */ |
4 /* */ | 4 /* */ |
5 /* FreeType API for color filtering of subpixel bitmap glyphs */ | 5 /* FreeType API for color filtering of subpixel bitmap glyphs */ |
6 /* (specification). */ | 6 /* (specification). */ |
7 /* */ | 7 /* */ |
8 /* Copyright 2006, 2007, 2008, 2010 by */ | 8 /* Copyright 2006-2008, 2010, 2013 by */ |
9 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ | 9 /* David Turner, Robert Wilhelm, and Werner Lemberg. */ |
10 /* */ | 10 /* */ |
11 /* This file is part of the FreeType project, and may only be used, */ | 11 /* This file is part of the FreeType project, and may only be used, */ |
12 /* modified, and distributed under the terms of the FreeType project */ | 12 /* modified, and distributed under the terms of the FreeType project */ |
13 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ | 13 /* license, LICENSE.TXT. By continuing to use, modify, or distribute */ |
14 /* this file you indicate that you have read the license and */ | 14 /* this file you indicate that you have read the license and */ |
15 /* understand and accept it fully. */ | 15 /* understand and accept it fully. */ |
16 /* */ | 16 /* */ |
17 /***************************************************************************/ | 17 /***************************************************************************/ |
18 | 18 |
19 | 19 |
20 #ifndef __FT_LCD_FILTER_H__ | 20 #ifndef __FT_LCD_FILTER_H__ |
21 #define __FT_LCD_FILTER_H__ | 21 #define __FT_LCD_FILTER_H__ |
22 | 22 |
23 #include "../ft2build.h" | 23 #include <ft2build.h> |
24 #include "freetype.h" | 24 #include FT_FREETYPE_H |
25 | 25 |
26 #ifdef FREETYPE_H | 26 #ifdef FREETYPE_H |
27 #error "freetype.h of FreeType 1 has been loaded!" | 27 #error "freetype.h of FreeType 1 has been loaded!" |
28 #error "Please fix the directory search order for header files" | 28 #error "Please fix the directory search order for header files" |
29 #error "so that freetype.h of FreeType 2 is found first." | 29 #error "so that freetype.h of FreeType 2 is found first." |
30 #endif | 30 #endif |
31 | 31 |
32 | 32 |
33 FT_BEGIN_HEADER | 33 FT_BEGIN_HEADER |
34 | 34 |
35 /*************************************************************************** | 35 /*************************************************************************** |
36 * | 36 * |
37 * @section: | 37 * @section: |
38 * lcd_filtering | 38 * lcd_filtering |
39 * | 39 * |
40 * @title: | 40 * @title: |
41 * LCD Filtering | 41 * LCD Filtering |
42 * | 42 * |
43 * @abstract: | 43 * @abstract: |
44 * Reduce color fringes of LCD-optimized bitmaps. | 44 * Reduce color fringes of LCD-optimized bitmaps. |
45 * | 45 * |
46 * @description: | 46 * @description: |
47 * The @FT_Library_SetLcdFilter API can be used to specify a low-pass | 47 * The @FT_Library_SetLcdFilter API can be used to specify a low-pass |
48 * filter which is then applied to LCD-optimized bitmaps generated | 48 * filter, which is then applied to LCD-optimized bitmaps generated |
49 * through @FT_Render_Glyph. This is useful to reduce color fringes | 49 * through @FT_Render_Glyph. This is useful to reduce color fringes |
50 * which would occur with unfiltered rendering. | 50 * that would occur with unfiltered rendering. |
51 * | 51 * |
52 * Note that no filter is active by default, and that this function is | 52 * Note that no filter is active by default, and that this function is |
53 * *not* implemented in default builds of the library. You need to | 53 * *not* implemented in default builds of the library. You need to |
54 * #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING in your `ftoption.h' file | 54 * #define FT_CONFIG_OPTION_SUBPIXEL_RENDERING in your `ftoption.h' file |
55 * in order to activate it. | 55 * in order to activate it. |
56 * | 56 * |
57 * FreeType generates alpha coverage maps, which are linear by nature. | 57 * FreeType generates alpha coverage maps, which are linear by nature. |
58 * For instance, the value 0x80 in bitmap representation means that | 58 * For instance, the value 0x80 in bitmap representation means that |
59 * (within numerical precision) 0x80/0xff fraction of that pixel is | 59 * (within numerical precision) 0x80/0xff fraction of that pixel is |
60 * covered by the glyph's outline. The blending function for placing | 60 * covered by the glyph's outline. The blending function for placing |
(...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
242 | 242 |
243 /* */ | 243 /* */ |
244 | 244 |
245 | 245 |
246 FT_END_HEADER | 246 FT_END_HEADER |
247 | 247 |
248 #endif /* __FT_LCD_FILTER_H__ */ | 248 #endif /* __FT_LCD_FILTER_H__ */ |
249 | 249 |
250 | 250 |
251 /* END */ | 251 /* END */ |
OLD | NEW |