Github User Fetcher 1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
ftsynth.h
Go to the documentation of this file.
1/****************************************************************************
2 *
3 * ftsynth.h
4 *
5 * FreeType synthesizing code for emboldening and slanting
6 * (specification).
7 *
8 * Copyright (C) 2000-2024 by
9 * David Turner, Robert Wilhelm, and Werner Lemberg.
10 *
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
13 * license, LICENSE.TXT. By continuing to use, modify, or distribute
14 * this file you indicate that you have read the license and
15 * understand and accept it fully.
16 *
17 */
18
19
20 /*************************************************************************/
21 /*************************************************************************/
22 /*************************************************************************/
23 /*************************************************************************/
24 /*************************************************************************/
25 /********* *********/
26 /********* WARNING, THIS IS ALPHA CODE! THIS API *********/
27 /********* IS DUE TO CHANGE UNTIL STRICTLY NOTIFIED BY THE *********/
28 /********* FREETYPE DEVELOPMENT TEAM *********/
29 /********* *********/
30 /*************************************************************************/
31 /*************************************************************************/
32 /*************************************************************************/
33 /*************************************************************************/
34 /*************************************************************************/
35
36
37 /* Main reason for not lifting the functions in this module to a */
38 /* 'standard' API is that the used parameters for emboldening and */
39 /* slanting are not configurable. Consider the functions as a */
40 /* code resource that should be copied into the application and */
41 /* adapted to the particular needs. */
42
43
44#ifndef FTSYNTH_H_
45#define FTSYNTH_H_
46
47
48#include <freetype/freetype.h>
49
50#ifdef FREETYPE_H
51#error "freetype.h of FreeType 1 has been loaded!"
52#error "Please fix the directory search order for header files"
53#error "so that freetype.h of FreeType 2 is found first."
54#endif
55
56
58
59 /* Embolden a glyph by a 'reasonable' value (which is highly a matter of */
60 /* taste). This function is actually a convenience function, providing */
61 /* a wrapper for @FT_Outline_Embolden and @FT_Bitmap_Embolden. */
62 /* */
63 /* For emboldened outlines the height, width, and advance metrics are */
64 /* increased by the strength of the emboldening -- this even affects */
65 /* mono-width fonts! */
66 /* */
67 /* You can also call @FT_Outline_Get_CBox to get precise values. */
68 FT_EXPORT( void )
70
71 /* Precisely adjust the glyph weight either horizontally or vertically. */
72 /* The `xdelta` and `ydelta` values are fractions of the face Em size */
73 /* (in fixed-point format). Considering that a regular face would have */
74 /* stem widths on the order of 0.1 Em, a delta of 0.05 (0x0CCC) should */
75 /* be very noticeable. To increase or decrease the weight, use positive */
76 /* or negative values, respectively. */
77 FT_EXPORT( void )
79 FT_Fixed xdelta,
80 FT_Fixed ydelta );
81
82
83 /* Slant an outline glyph to the right by about 12 degrees. */
84 FT_EXPORT( void )
86
87 /* Slant an outline glyph by a given sine of an angle. You can apply */
88 /* slant along either x- or y-axis by choosing a corresponding non-zero */
89 /* argument. If both slants are non-zero, some affine transformation */
90 /* will result. */
91 FT_EXPORT( void )
93 FT_Fixed xslant,
94 FT_Fixed yslant );
95
96 /* */
97
98
100
101#endif /* FTSYNTH_H_ */
102
103
104/* END */
#define FT_END_HEADER
Definition ftheader.h:57
#define FT_BEGIN_HEADER
Definition ftheader.h:37
FT_BEGIN_HEADER FT_GlyphSlot_Embolden(FT_GlyphSlot slot)
FT_GlyphSlot_AdjustWeight(FT_GlyphSlot slot, FT_Fixed xdelta, FT_Fixed ydelta)
FT_GlyphSlot_Slant(FT_GlyphSlot slot, FT_Fixed xslant, FT_Fixed yslant)
FT_GlyphSlot_Oblique(FT_GlyphSlot slot)
signed long FT_Fixed
Definition fttypes.h:290
#define FT_EXPORT(x)