< prev index next >

src/java.desktop/share/native/libfreetype/include/freetype/internal/ftgloadr.h

Print this page


   1 /***************************************************************************/
   2 /*                                                                         */
   3 /*  ftgloadr.h                                                             */
   4 /*                                                                         */
   5 /*    The FreeType glyph loader (specification).                           */
   6 /*                                                                         */
   7 /*  Copyright 2002-2018 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 #ifndef FTGLOADR_H_
  20 #define FTGLOADR_H_
  21 
  22 
  23 #include <ft2build.h>
  24 #include FT_FREETYPE_H
  25 
  26 
  27 FT_BEGIN_HEADER
  28 
  29 
  30   /*************************************************************************/
  31   /*                                                                       */
  32   /* <Struct>                                                              */
  33   /*    FT_GlyphLoader                                                     */
  34   /*                                                                       */
  35   /* <Description>                                                         */
  36   /*    The glyph loader is an internal object used to load several glyphs */
  37   /*    together (for example, in the case of composites).                 */
  38   /*                                                                       */
  39   typedef struct  FT_SubGlyphRec_
  40   {
  41     FT_Int     index;
  42     FT_UShort  flags;
  43     FT_Int     arg1;
  44     FT_Int     arg2;
  45     FT_Matrix  transform;
  46 
  47   } FT_SubGlyphRec;
  48 
  49 
  50   typedef struct  FT_GlyphLoadRec_
  51   {
  52     FT_Outline   outline;       /* outline                   */
  53     FT_Vector*   extra_points;  /* extra points table        */
  54     FT_Vector*   extra_points2; /* second extra points table */
  55     FT_UInt      num_subglyphs; /* number of subglyphs       */
  56     FT_SubGlyph  subglyphs;     /* subglyphs                 */
  57 
  58   } FT_GlyphLoadRec, *FT_GlyphLoad;


 120       FT_GLYPHLOADER_CHECK_C( _loader, _contours ) )               \
 121     ? 0                                                            \
 122     : FT_GlyphLoader_CheckPoints( (_loader),                       \
 123                                   (FT_UInt)(_points),              \
 124                                   (FT_UInt)(_contours) ) )
 125 
 126 
 127   /* check that there is enough space to add `n_subs' sub-glyphs to */
 128   /* a glyph loader                                                 */
 129   FT_BASE( FT_Error )
 130   FT_GlyphLoader_CheckSubGlyphs( FT_GlyphLoader  loader,
 131                                  FT_UInt         n_subs );
 132 
 133   /* prepare a glyph loader, i.e. empty the current glyph */
 134   FT_BASE( void )
 135   FT_GlyphLoader_Prepare( FT_GlyphLoader  loader );
 136 
 137   /* add the current glyph to the base glyph */
 138   FT_BASE( void )
 139   FT_GlyphLoader_Add( FT_GlyphLoader  loader );
 140 
 141   /* copy points from one glyph loader to another */
 142   FT_BASE( FT_Error )
 143   FT_GlyphLoader_CopyPoints( FT_GlyphLoader  target,
 144                              FT_GlyphLoader  source );
 145 
 146  /* */
 147 
 148 
 149 FT_END_HEADER
 150 
 151 #endif /* FTGLOADR_H_ */
 152 
 153 
 154 /* END */
   1 /****************************************************************************
   2  *
   3  * ftgloadr.h
   4  *
   5  *   The FreeType glyph loader (specification).
   6  *
   7  * Copyright (C) 2002-2019 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 #ifndef FTGLOADR_H_
  20 #define FTGLOADR_H_
  21 
  22 
  23 #include <ft2build.h>
  24 #include FT_FREETYPE_H
  25 
  26 
  27 FT_BEGIN_HEADER
  28 
  29 
  30   /**************************************************************************
  31    *
  32    * @struct:
  33    *   FT_GlyphLoader
  34    *
  35    * @description:
  36    *   The glyph loader is an internal object used to load several glyphs
  37    *   together (for example, in the case of composites).
  38    */
  39   typedef struct  FT_SubGlyphRec_
  40   {
  41     FT_Int     index;
  42     FT_UShort  flags;
  43     FT_Int     arg1;
  44     FT_Int     arg2;
  45     FT_Matrix  transform;
  46 
  47   } FT_SubGlyphRec;
  48 
  49 
  50   typedef struct  FT_GlyphLoadRec_
  51   {
  52     FT_Outline   outline;       /* outline                   */
  53     FT_Vector*   extra_points;  /* extra points table        */
  54     FT_Vector*   extra_points2; /* second extra points table */
  55     FT_UInt      num_subglyphs; /* number of subglyphs       */
  56     FT_SubGlyph  subglyphs;     /* subglyphs                 */
  57 
  58   } FT_GlyphLoadRec, *FT_GlyphLoad;


 120       FT_GLYPHLOADER_CHECK_C( _loader, _contours ) )               \
 121     ? 0                                                            \
 122     : FT_GlyphLoader_CheckPoints( (_loader),                       \
 123                                   (FT_UInt)(_points),              \
 124                                   (FT_UInt)(_contours) ) )
 125 
 126 
 127   /* check that there is enough space to add `n_subs' sub-glyphs to */
 128   /* a glyph loader                                                 */
 129   FT_BASE( FT_Error )
 130   FT_GlyphLoader_CheckSubGlyphs( FT_GlyphLoader  loader,
 131                                  FT_UInt         n_subs );
 132 
 133   /* prepare a glyph loader, i.e. empty the current glyph */
 134   FT_BASE( void )
 135   FT_GlyphLoader_Prepare( FT_GlyphLoader  loader );
 136 
 137   /* add the current glyph to the base glyph */
 138   FT_BASE( void )
 139   FT_GlyphLoader_Add( FT_GlyphLoader  loader );





 140 
 141  /* */
 142 
 143 
 144 FT_END_HEADER
 145 
 146 #endif /* FTGLOADR_H_ */
 147 
 148 
 149 /* END */
< prev index next >