The BIG graph update
[rrdtool.git] / libraries / freetype-2.0.5 / include / freetype / ftbbox.h
1 /***************************************************************************/
2 /*                                                                         */
3 /*  ftbbox.h                                                               */
4 /*                                                                         */
5 /*    FreeType exact bbox computation (specification).                     */
6 /*                                                                         */
7 /*  Copyright 1996-2001 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 <ft2build.h>
35 #include FT_FREETYPE_H
36
37
38 FT_BEGIN_HEADER
39
40
41   /*************************************************************************/
42   /*                                                                       */
43   /* <Section>                                                             */
44   /*    outline_processing                                                 */
45   /*                                                                       */
46   /*************************************************************************/
47
48
49   /*************************************************************************/
50   /*                                                                       */
51   /* <Function>                                                            */
52   /*    FT_Outline_Get_BBox                                                */
53   /*                                                                       */
54   /* <Description>                                                         */
55   /*    Computes the exact bounding box of an outline.  This is slower     */
56   /*    than computing the control box.  However, it uses an advanced      */
57   /*    algorithm which returns _very_ quickly when the two boxes          */
58   /*    coincide.  Otherwise, the outline Bezier arcs are walked over to   */
59   /*    extract their extrema.                                             */
60   /*                                                                       */
61   /* <Input>                                                               */
62   /*    outline :: A pointer to the source outline.                        */
63   /*                                                                       */
64   /* <Output>                                                              */
65   /*    abbox   :: The outline's exact bounding box.                       */
66   /*                                                                       */
67   /* <Return>                                                              */
68   /*    FreeType error code.  0 means success.                             */
69   /*                                                                       */
70   FT_EXPORT( FT_Error )
71   FT_Outline_Get_BBox( FT_Outline*  outline,
72                        FT_BBox     *abbox );
73
74
75   /* */
76
77
78 FT_END_HEADER
79
80 #endif /* __FTBBOX_H__ */
81
82
83 /* END */