zenilib: zenilib/jni/external/freetype2/src/base/ftbbox.c File Reference

zenilib 0.5.3.0

- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Macros | Typedefs | Functions | Variables
ftbbox.c File Reference
`#include <ft2build.h>`
`#include <FT_BBOX_H>`
`#include <FT_IMAGE_H>`
`#include <FT_OUTLINE_H>`
`#include <FT_INTERNAL_CALC_H>`
`#include <FT_INTERNAL_OBJECTS_H>`

Go to the source code of this file.

## Macros

#define | CHECK_X(p, bbox) ( p->x < bbox.xMin || p->x > bbox.xMax )
#define | CHECK_Y(p, bbox) ( p->y < bbox.yMin || p->y > bbox.yMax )

## Typedefs

typedef struct TBBox_Rec_ | TBBox_Rec

## Functions

static void | BBox_Conic_Check (FT_Pos y1, FT_Pos y2, FT_Pos y3, FT_Pos *min, FT_Pos *max)
static int | BBox_Conic_To (FT_Vector *control, FT_Vector *to, TBBox_Rec *user)
static void | BBox_Cubic_Check (FT_Pos y1, FT_Pos y2, FT_Pos y3, FT_Pos y4, FT_Pos *min, FT_Pos *max)
static int | BBox_Cubic_To (FT_Vector *control1, FT_Vector *control2, FT_Vector *to, TBBox_Rec *user)
static int | BBox_Move_To (FT_Vector *to, TBBox_Rec *user)
| for (n=1;n< outline->n_points;n++)
| FT_DEFINE_OUTLINE_FUNCS (bbox_interface,(FT_Outline_MoveTo_Func) BBox_Move_To,(FT_Outline_LineTo_Func) BBox_Move_To,(FT_Outline_ConicTo_Func) BBox_Conic_To,(FT_Outline_CubicTo_Func) BBox_Cubic_To, 0, 0) FT_Outline_Get_BBox(FT_Outline *outline
| if (outline->n_points==0||outline->n_contours<=0)
| if (cbox.xMin< bbox.xMin||cbox.xMax > bbox.xMax||cbox.yMin< bbox.yMin||cbox.yMax > bbox.yMax)
static void | test_cubic_extrema (FT_Pos y1, FT_Pos y2, FT_Pos y3, FT_Pos y4, FT_Fixed u, FT_Pos *min, FT_Pos *max)

## Variables

FT_BBox * | abbox
FT_BBox | bbox
return | FT_Err_Invalid_Argument
return | FT_Err_Invalid_Outline
return | FT_Err_Ok
FT_UShort | n
FT_Vector * | vec = outline->points
bbox | xMin = bbox.xMax = cbox.xMin = cbox.xMax = vec->x
bbox | yMin = bbox.yMax = cbox.yMin = cbox.yMax = vec->y

## Macro Definition Documentation

#define CHECK_X | ( |  | p,
|  |  | bbox
| ) |  | ( p->x < bbox.xMin || p->x > bbox.xMax )

Definition at line 73 of file ftbbox.c.

Referenced by BBox_Conic_To(), and BBox_Cubic_To().

#define CHECK_Y | ( |  | p,
|  |  | bbox
| ) |  | ( p->y < bbox.yMin || p->y > bbox.yMax )

Definition at line 76 of file ftbbox.c.

Referenced by BBox_Conic_To(), and BBox_Cubic_To().

## Typedef Documentation

typedef struct TBBox_Rec_ TBBox_Rec

## Function Documentation

static void BBox_Conic_Check | ( | FT_Pos | y1,
|  | FT_Pos | y2,
|  | FT_Pos | y3,
|  | FT_Pos * | min,
|  | FT_Pos * | max
| ) |  |

static

Definition at line 103 of file ftbbox.c.

References FT_MulDiv().

Referenced by BBox_Conic_To().

static int BBox_Conic_To | ( | FT_Vector * | control,
|  | FT_Vector * | to,
|  | TBBox_Rec * | user
| ) |  |

static

Definition at line 163 of file ftbbox.c.

References BBox_Conic_Check(), CHECK_X, CHECK_Y, FT_Vector_::x, and FT_Vector_::y.

static void BBox_Cubic_Check | ( | FT_Pos | y1,
|  | FT_Pos | y2,
|  | FT_Pos | y3,
|  | FT_Pos | y4,
|  | FT_Pos * | min,
|  | FT_Pos * | max
| ) |  |

static

Definition at line 333 of file ftbbox.c.

References d, FT_DivFix(), FT_MulFix(), FT_Pos, FT_SqrtFixed(), t2, and test_cubic_extrema().

Referenced by BBox_Cubic_To().

static int BBox_Cubic_To | ( | FT_Vector * | control1,
|  | FT_Vector * | control2,
|  | FT_Vector * | to,
|  | TBBox_Rec * | user
| ) |  |

static

Definition at line 532 of file ftbbox.c.

References BBox_Cubic_Check(), CHECK_X, CHECK_Y, FT_Vector_::x, and FT_Vector_::y.

static int BBox_Move_To | ( | FT_Vector * | to,
|  | TBBox_Rec * | user
| ) |  |

static

Definition at line 64 of file ftbbox.c.

for | ( | n | = `1; n < outline->n_points; n++` | ) |

Definition at line 606 of file ftbbox.c.

References FT_CURVE_TAG, FT_CURVE_TAG_ON, FT_Pos, FT_Vector_::x, FT_BBox_::xMax, FT_BBox_::xMin, FT_Vector_::y, FT_BBox_::yMax, and FT_BBox_::yMin.

FT_DEFINE_OUTLINE_FUNCS | ( | bbox_interface | ,
|  | (FT_Outline_MoveTo_Func) | BBox_Move_To,
|  | (FT_Outline_LineTo_Func) | BBox_Move_To,
|  | (FT_Outline_ConicTo_Func) | BBox_Conic_To,
|  | (FT_Outline_CubicTo_Func) | BBox_Cubic_To,
|  | 0 | ,
|  | 0 |
| ) |  |

if | ( | outline-> | n_points = `= 0 || outline->n_contours <= 0` | ) |

Definition at line 590 of file ftbbox.c.

if | ( | cbox.xMin< bbox.xMin||cbox.xMax > bbox.xMax||cbox.yMin< bbox.yMin||cbox.yMax > bbox. | yMax | ) |

Definition at line 633 of file ftbbox.c.

References bbox, error, and FT_Outline_Decompose().

static void test_cubic_extrema | ( | FT_Pos | y1,
|  | FT_Pos | y2,
|  | FT_Pos | y3,
|  | FT_Pos | y4,
|  | FT_Fixed | u,
|  | FT_Pos * | min,
|  | FT_Pos * | max
| ) |  |

static

Definition at line 289 of file ftbbox.c.

References d, FT_MulFix(), FT_Pos, and FT_UNUSED.

Referenced by BBox_Cubic_Check().

## Variable Documentation

else * abbox

Initial value:
{
FT_BBox cbox
FT_BBox_
Definition: ftimage.h:116

Definition at line 576 of file ftbbox.c.

FT_BBox bbox

Definition at line 578 of file ftbbox.c.

Referenced by af_loader_load_g(), cff_parse_font_bbox(), compute_glyph_metrics(), dump_outline(), if(), profile_outline(), and ps_parser_load_field().

return FT_Err_Invalid_Argument

Definition at line 584 of file ftbbox.c.

Referenced by FT_Activate_Size(), FT_Add_Module(), FT_Attach_File(), FT_Bitmap_Convert(), FT_Bitmap_Done(), FT_Bitmap_Embolden(), FT_ClassicKern_Validate(), FT_CMap_New(), ft_face_get_mm_service(), FT_Get_BDF_Charset_ID(), FT_Get_BDF_Property(), FT_Get_CID_From_Glyph_Index(), FT_Get_CID_Is_Internally_CID_Keyed(), FT_Get_CID_Registry_Ordering_Supplement(), FT_Get_Glyph(), FT_Get_Glyph_Name(), FT_Get_Kerning(), FT_Get_MM_Var(), FT_Get_Multi_Master(), FT_Get_PFR_Advance(), FT_Get_PFR_Kerning(), FT_Get_PFR_Metrics(), FT_Get_PS_Font_Info(), FT_Get_PS_Font_Private(), FT_Get_SubGlyph_Info(), FT_Get_Track_Kerning(), FT_Get_WinFNT_Header(), FT_Glyph_Copy(), FT_Glyph_Stroke(), FT_Glyph_StrokeBorder(), FT_Glyph_To_Bitmap(), FT_Glyph_Transform(), FT_Matrix_Invert(), ft_mem_qalloc(), ft_mem_qrealloc(), FT_New_Face(), FT_New_GlyphSlot(), FT_New_Library(), FT_New_Memory_Face(), FT_Open_Face(), FT_OpenType_Validate(), FT_Outline_Check(), FT_Outline_Copy(), FT_Outline_Decompose(), FT_Outline_Done_Internal(), FT_Outline_Embolden(), FT_Outline_Get_Bitmap(), FT_Outline_New_Internal(), FT_Outline_Render(), FT_Render_Glyph(), FT_Request_Size(), FT_Select_Charmap(), FT_Select_Size(), FT_Set_Charmap(), FT_Set_MM_Blend_Coordinates(), FT_Set_MM_Design_Coordinates(), FT_Set_Renderer(), FT_Set_Var_Blend_Coordinates(), FT_Set_Var_Design_Coordinates(), FT_Stream_New(), FT_Stream_ReadFields(), FT_Stroker_GetBorderCounts(), FT_Stroker_New(), FT_Stroker_ParseOutline(), FT_TrueTypeGX_Validate(), and main().

return FT_Err_Invalid_Outline

Definition at line 587 of file ftbbox.c.

Referenced by FT_Outline_Decompose(), and FT_Stroker_ParseOutline().

return FT_Err_Ok

Definition at line 658 of file ftbbox.c.

Referenced by _ft_face_scale_advances(), _tt_check_patents_in_table(), cff_face_init(), find_unicode_charmap(), FT_Activate_Size(), FT_Add_Module(), ft_bitmap_assure_buffer(), FT_Bitmap_Convert(), FT_Bitmap_Copy(), FT_Bitmap_Done(), FT_Bitmap_Embolden(), ft_bitmap_glyph_init(), FT_CMap_New(), FT_DEFINE_GLYPH(), FT_Done_Face(), FT_Done_FreeType(), FT_Done_Library(), FT_Done_Size(), ft_face_get_mm_service(), FT_Get_Advances(), FT_Get_Kerning(), FT_Get_PFR_Metrics(), FT_Get_Track_Kerning(), FT_Glyph_To_Bitmap(), FT_Glyph_Transform(), FT_GlyphLoader_CheckPoints(), FT_GlyphLoader_CheckSubGlyphs(), ft_glyphslot_init(), FT_GlyphSlot_Own_Bitmap(), FT_List_Iterate(), FT_Match_Size(), FT_Matrix_Invert(), ft_mem_qalloc(), ft_mem_qrealloc(), ft_mem_realloc(), FT_New_Library(), FT_Outline_Copy(), FT_Outline_Decompose(), FT_Outline_Done_Internal(), FT_Outline_Embolden(), ft_outline_glyph_prepare(), FT_Outline_New_Internal(), FT_Raccess_Get_DataOffsets(), FT_Raccess_Get_HeaderInfo(), FT_Reference_Face(), FT_Reference_Library(), FT_Remove_Module(), FT_Render_Glyph_Internal(), FT_Request_Size(), FT_Select_Size(), FT_Set_Renderer(), FT_Stream_EnterFrame(), FT_Stream_Open(), FT_Stream_ReadAt(), FT_Stream_ReadChar(), FT_Stream_ReadFields(), FT_Stream_ReadULong(), FT_Stream_ReadULongLE(), FT_Stream_ReadUOffset(), FT_Stream_ReadUShort(), FT_Stream_ReadUShortLE(), FT_Stream_Seek(), ft_stroke_border_arcto(), ft_stroke_border_get_counts(), ft_stroke_border_grow(), ft_stroke_border_lineto(), ft_stroker_add_reverse_left(), ft_stroker_arcto(), FT_Stroker_BeginSubPath(), ft_stroker_cap(), FT_Stroker_ConicTo(), FT_Stroker_CubicTo(), FT_Stroker_EndSubPath(), ft_stroker_inside(), FT_Stroker_LineTo(), FT_Stroker_ParseOutline(), ft_stroker_process_corner(), ft_validator_init(), main(), parse_afm(), T1_Face_Init(), and T42_Face_Init().

FT_UShort n

Definition at line 580 of file ftbbox.c.

vec = outline->points

Definition at line 579 of file ftbbox.c.

Referenced by _ve_amp(), af_glyph_hints_reload(), af_glyph_hints_save(), cff_slot_load(), cid_slot_load_glyph(), FT_Outline_Decompose(), FT_Outline_Get_CBox(), FT_Outline_Transform(), FT_Outline_Translate(), ft_smooth_render_generic(), ft_stroke_border_conicto(), ft_stroke_border_cubicto(), ft_stroke_border_lineto(), FT_Stroker_ParseOutline(), FT_Vector_Length(), FT_Vector_Polarize(), gray_compute_cbox(), pfr_glyph_curve_to(), pfr_glyph_load_rec(), pfr_slot_load(), psh_glyph_init(), psh_glyph_load_points(), psh_glyph_save_points(), T1_Load_Glyph(), TT_Load_Simple_Glyph(), and TT_Process_Simple_Glyph().

bbox xMin = bbox.xMax = cbox.xMin = cbox.xMax = vec->x

Definition at line 602 of file ftbbox.c.

Referenced by FT_Outline_Get_CBox(), and tt_face_load_generic_header().

bbox yMin = bbox.yMax = cbox.yMin = cbox.yMax = vec->y

Definition at line 603 of file ftbbox.c.

Referenced by FT_Outline_Get_CBox(), and tt_face_load_generic_header().