Github User Fetcher
1.0.0
C Application with Server and GUI
Loading...
Searching...
No Matches
ftbbox.h
Go to the documentation of this file.
1
/****************************************************************************
2
*
3
* ftbbox.h
4
*
5
* FreeType exact bbox computation (specification).
6
*
7
* Copyright (C) 1996-2024 by
8
* David Turner, Robert Wilhelm, and Werner Lemberg.
9
*
10
* This file is part of the FreeType project, and may only be used,
11
* modified, and distributed under the terms of the FreeType project
12
* license, LICENSE.TXT. By continuing to use, modify, or distribute
13
* this file you indicate that you have read the license and
14
* understand and accept it fully.
15
*
16
*/
17
18
19
/**************************************************************************
20
*
21
* This component has a _single_ role: to compute exact outline bounding
22
* boxes.
23
*
24
* It is separated from the rest of the engine for various technical
25
* reasons. It may well be integrated in 'ftoutln' later.
26
*
27
*/
28
29
30
#ifndef FTBBOX_H_
31
#define FTBBOX_H_
32
33
34
#include <freetype/freetype.h>
35
36
#ifdef FREETYPE_H
37
#error "freetype.h of FreeType 1 has been loaded!"
38
#error "Please fix the directory search order for header files"
39
#error "so that freetype.h of FreeType 2 is found first."
40
#endif
41
42
43
FT_BEGIN_HEADER
44
45
46
/**************************************************************************
47
*
48
* @section:
49
* outline_processing
50
*
51
*/
52
53
54
/**************************************************************************
55
*
56
* @function:
57
* FT_Outline_Get_BBox
58
*
59
* @description:
60
* Compute the exact bounding box of an outline. This is slower than
61
* computing the control box. However, it uses an advanced algorithm
62
* that returns _very_ quickly when the two boxes coincide. Otherwise,
63
* the outline Bezier arcs are traversed to extract their extrema.
64
*
65
* @input:
66
* outline ::
67
* A pointer to the source outline.
68
*
69
* @output:
70
* abbox ::
71
* The outline's exact bounding box.
72
*
73
* @return:
74
* FreeType error code. 0~means success.
75
*
76
* @note:
77
* If the font is tricky and the glyph has been loaded with
78
* @FT_LOAD_NO_SCALE, the resulting BBox is meaningless. To get
79
* reasonable values for the BBox it is necessary to load the glyph at a
80
* large ppem value (so that the hinting instructions can properly shift
81
* and scale the subglyphs), then extracting the BBox, which can be
82
* eventually converted back to font units.
83
*/
84
FT_EXPORT
(
FT_Error
)
85
FT_Outline_Get_BBox
(
FT_Outline
* outline,
86
FT_BBox
*abbox );
87
88
/* */
89
90
91
FT_END_HEADER
92
93
#endif
/* FTBBOX_H_ */
94
95
96
/* END */
97
98
99
/* Local Variables: */
100
/* coding: utf-8 */
101
/* End: */
FT_Outline_Get_BBox
FT_BEGIN_HEADER FT_Outline_Get_BBox(FT_Outline *outline, FT_BBox *abbox)
FT_END_HEADER
#define FT_END_HEADER
Definition
ftheader.h:57
FT_BEGIN_HEADER
#define FT_BEGIN_HEADER
Definition
ftheader.h:37
FT_Error
int FT_Error
Definition
fttypes.h:302
FT_EXPORT
#define FT_EXPORT(x)
Definition
public-macros.h:104
FT_BBox_
Definition
ftimage.h:119
FT_Outline_
Definition
ftimage.h:348
nix
store
w4wi2ik0fkz57b7i8ds4fr1jnj0333j0-freetype-2.13.3-dev
include
freetype2
freetype
ftbbox.h
Generated by
1.10.0