1999-12-17 00:11:37 +01:00
|
|
|
/***************************************************************************/
|
|
|
|
/* */
|
|
|
|
/* ftbbox.h */
|
|
|
|
/* */
|
2000-10-26 02:06:35 +02:00
|
|
|
/* FreeType exact bbox computation (specification). */
|
1999-12-17 00:11:37 +01:00
|
|
|
/* */
|
2000-01-02 10:41:30 +01:00
|
|
|
/* Copyright 1996-2000 by */
|
1999-12-17 00:11:37 +01:00
|
|
|
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
|
|
|
/* */
|
2000-07-14 08:16:47 +02:00
|
|
|
/* This file is part of the FreeType project, and may only be used, */
|
|
|
|
/* modified, and distributed under the terms of the FreeType project */
|
1999-12-17 00:11:37 +01:00
|
|
|
/* license, LICENSE.TXT. By continuing to use, modify, or distribute */
|
|
|
|
/* this file you indicate that you have read the license and */
|
|
|
|
/* understand and accept it fully. */
|
|
|
|
/* */
|
|
|
|
/***************************************************************************/
|
|
|
|
|
|
|
|
|
|
|
|
/*************************************************************************/
|
|
|
|
/* */
|
|
|
|
/* This component has a _single_ role: to compute exact outline bounding */
|
|
|
|
/* boxes. */
|
|
|
|
/* */
|
|
|
|
/* It is separated from the rest of the engine for various technical */
|
|
|
|
/* reasons. It may well be integrated in `ftoutln' later. */
|
|
|
|
/* */
|
|
|
|
/*************************************************************************/
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef FTBBOX_H
|
|
|
|
#define FTBBOX_H
|
|
|
|
|
2000-12-09 01:45:38 +01:00
|
|
|
|
|
|
|
#include <ft2build.h>
|
|
|
|
#include FT_FREETYPE_H
|
|
|
|
|
1999-12-17 00:11:37 +01:00
|
|
|
|
2000-12-01 00:12:33 +01:00
|
|
|
FT_BEGIN_HEADER
|
1999-12-17 00:11:37 +01:00
|
|
|
|
2000-12-09 01:45:38 +01:00
|
|
|
|
2001-01-10 12:15:48 +01:00
|
|
|
/********************************
|
|
|
|
* <Section> outline_processing
|
|
|
|
*/
|
|
|
|
|
1999-12-17 00:11:37 +01:00
|
|
|
/*************************************************************************/
|
|
|
|
/* */
|
|
|
|
/* <Function> */
|
2000-10-26 02:06:35 +02:00
|
|
|
/* FT_Outline_Get_BBox */
|
1999-12-17 00:11:37 +01:00
|
|
|
/* */
|
|
|
|
/* <Description> */
|
|
|
|
/* Computes the exact bounding box of an outline. This is slower */
|
|
|
|
/* than computing the control box. However, it uses an advanced */
|
|
|
|
/* algorithm which returns _very_ quickly when the two boxes */
|
|
|
|
/* coincide. Otherwise, the outline Bezier arcs are walked over to */
|
|
|
|
/* extract their extrema. */
|
|
|
|
/* */
|
|
|
|
/* <Input> */
|
|
|
|
/* outline :: A pointer to the source outline. */
|
|
|
|
/* */
|
|
|
|
/* <Output> */
|
2000-11-06 05:33:56 +01:00
|
|
|
/* abbox :: The outline's exact bounding box. */
|
1999-12-17 00:11:37 +01:00
|
|
|
/* */
|
|
|
|
/* <Return> */
|
2000-10-26 12:04:16 +02:00
|
|
|
/* FreeType error code. 0 means success. */
|
1999-12-17 00:11:37 +01:00
|
|
|
/* */
|
2000-11-04 02:55:49 +01:00
|
|
|
FT_EXPORT( FT_Error ) FT_Outline_Get_BBox( FT_Outline* outline,
|
2000-11-06 05:33:56 +01:00
|
|
|
FT_BBox *abbox );
|
1999-12-17 00:11:37 +01:00
|
|
|
|
|
|
|
|
2000-12-01 00:12:33 +01:00
|
|
|
/* */
|
|
|
|
|
2000-12-09 01:45:38 +01:00
|
|
|
|
2000-12-01 00:12:33 +01:00
|
|
|
FT_END_HEADER
|
1999-12-17 00:11:37 +01:00
|
|
|
|
|
|
|
#endif /* FTBBOX_H */
|
|
|
|
|
|
|
|
|
|
|
|
/* END */
|