< prev index next >

src/java.desktop/share/native/libfreetype/src/type1/t1objs.h

Print this page


   1 /***************************************************************************/
   2 /*                                                                         */
   3 /*  t1objs.h                                                               */
   4 /*                                                                         */
   5 /*    Type 1 objects manager (specification).                              */
   6 /*                                                                         */
   7 /*  Copyright 1996-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 T1OBJS_H_
  20 #define T1OBJS_H_
  21 
  22 
  23 #include <ft2build.h>
  24 #include FT_INTERNAL_OBJECTS_H
  25 #include FT_CONFIG_CONFIG_H
  26 #include FT_INTERNAL_TYPE1_TYPES_H
  27 
  28 
  29 FT_BEGIN_HEADER
  30 
  31 
  32   /* The following structures must be defined by the hinter */
  33   typedef struct T1_Size_Hints_   T1_Size_Hints;
  34   typedef struct T1_Glyph_Hints_  T1_Glyph_Hints;
  35 
  36 
  37   /*************************************************************************/
  38   /*                                                                       */
  39   /* <Type>                                                                */
  40   /*    T1_Size                                                            */
  41   /*                                                                       */
  42   /* <Description>                                                         */
  43   /*    A handle to a Type 1 size object.                                  */
  44   /*                                                                       */
  45   typedef struct T1_SizeRec_*  T1_Size;
  46 
  47 
  48   /*************************************************************************/
  49   /*                                                                       */
  50   /* <Type>                                                                */
  51   /*    T1_GlyphSlot                                                       */
  52   /*                                                                       */
  53   /* <Description>                                                         */
  54   /*    A handle to a Type 1 glyph slot object.                            */
  55   /*                                                                       */
  56   typedef struct T1_GlyphSlotRec_*  T1_GlyphSlot;
  57 
  58 
  59   /*************************************************************************/
  60   /*                                                                       */
  61   /* <Type>                                                                */
  62   /*    T1_CharMap                                                         */
  63   /*                                                                       */
  64   /* <Description>                                                         */
  65   /*    A handle to a Type 1 character mapping object.                     */
  66   /*                                                                       */
  67   /* <Note>                                                                */
  68   /*    The Type 1 format doesn't use a charmap but an encoding table.     */
  69   /*    The driver is responsible for making up charmap objects            */
  70   /*    corresponding to these tables.                                     */
  71   /*                                                                       */
  72   typedef struct T1_CharMapRec_*   T1_CharMap;
  73 
  74 
  75   /*************************************************************************/
  76   /*                                                                       */
  77   /*                  HERE BEGINS THE TYPE1 SPECIFIC STUFF                 */
  78   /*                                                                       */
  79   /*************************************************************************/
  80 
  81 
  82   /*************************************************************************/
  83   /*                                                                       */
  84   /* <Type>                                                                */
  85   /*    T1_SizeRec                                                         */
  86   /*                                                                       */
  87   /* <Description>                                                         */
  88   /*    Type 1 size record.                                                */
  89   /*                                                                       */
  90   typedef struct  T1_SizeRec_
  91   {
  92     FT_SizeRec  root;
  93 
  94   } T1_SizeRec;
  95 
  96 
  97   FT_LOCAL( void )
  98   T1_Size_Done( FT_Size  size );
  99 
 100   FT_LOCAL( FT_Error )
 101   T1_Size_Request( FT_Size          size,
 102                    FT_Size_Request  req );
 103 
 104   FT_LOCAL( FT_Error )
 105   T1_Size_Init( FT_Size  size );
 106 
 107 
 108   /*************************************************************************/
 109   /*                                                                       */
 110   /* <Type>                                                                */
 111   /*    T1_GlyphSlotRec                                                    */
 112   /*                                                                       */
 113   /* <Description>                                                         */
 114   /*    Type 1 glyph slot record.                                          */
 115   /*                                                                       */
 116   typedef struct  T1_GlyphSlotRec_
 117   {
 118     FT_GlyphSlotRec  root;
 119 
 120     FT_Bool          hint;
 121     FT_Bool          scaled;
 122 
 123     FT_Fixed         x_scale;
 124     FT_Fixed         y_scale;
 125 
 126     FT_Int           max_points;
 127     FT_Int           max_contours;
 128 
 129   } T1_GlyphSlotRec;
 130 
 131 
 132   FT_LOCAL( FT_Error )
 133   T1_Face_Init( FT_Stream      stream,
 134                 FT_Face        face,
 135                 FT_Int         face_index,


   1 /****************************************************************************
   2  *
   3  * t1objs.h
   4  *
   5  *   Type 1 objects manager (specification).
   6  *
   7  * Copyright (C) 1996-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 T1OBJS_H_
  20 #define T1OBJS_H_
  21 
  22 
  23 #include <ft2build.h>
  24 #include FT_INTERNAL_OBJECTS_H
  25 #include FT_CONFIG_CONFIG_H
  26 #include FT_INTERNAL_TYPE1_TYPES_H
  27 
  28 
  29 FT_BEGIN_HEADER
  30 
  31 
  32   /* The following structures must be defined by the hinter */
  33   typedef struct T1_Size_Hints_   T1_Size_Hints;
  34   typedef struct T1_Glyph_Hints_  T1_Glyph_Hints;
  35 
  36 
  37   /**************************************************************************
  38    *
  39    * @Type:
  40    *   T1_Size
  41    *
  42    * @Description:
  43    *   A handle to a Type 1 size object.
  44    */
  45   typedef struct T1_SizeRec_*  T1_Size;
  46 
  47 
  48   /**************************************************************************
  49    *
  50    * @Type:
  51    *   T1_GlyphSlot
  52    *
  53    * @Description:
  54    *   A handle to a Type 1 glyph slot object.
  55    */
  56   typedef struct T1_GlyphSlotRec_*  T1_GlyphSlot;
  57 
  58 
  59   /**************************************************************************
  60    *
  61    * @Type:
  62    *   T1_CharMap
  63    *
  64    * @Description:
  65    *   A handle to a Type 1 character mapping object.
  66    *
  67    * @Note:
  68    *   The Type 1 format doesn't use a charmap but an encoding table.
  69    *   The driver is responsible for making up charmap objects
  70    *   corresponding to these tables.
  71    */
  72   typedef struct T1_CharMapRec_*   T1_CharMap;
  73 
  74 
  75   /**************************************************************************
  76    *
  77    *                 HERE BEGINS THE TYPE1 SPECIFIC STUFF
  78    *
  79    */
  80 
  81 
  82   /**************************************************************************
  83    *
  84    * @Type:
  85    *   T1_SizeRec
  86    *
  87    * @Description:
  88    *   Type 1 size record.
  89    */
  90   typedef struct  T1_SizeRec_
  91   {
  92     FT_SizeRec  root;
  93 
  94   } T1_SizeRec;
  95 
  96 
  97   FT_LOCAL( void )
  98   T1_Size_Done( FT_Size  size );
  99 
 100   FT_LOCAL( FT_Error )
 101   T1_Size_Request( FT_Size          size,
 102                    FT_Size_Request  req );
 103 
 104   FT_LOCAL( FT_Error )
 105   T1_Size_Init( FT_Size  size );
 106 
 107 
 108   /**************************************************************************
 109    *
 110    * @Type:
 111    *   T1_GlyphSlotRec
 112    *
 113    * @Description:
 114    *   Type 1 glyph slot record.
 115    */
 116   typedef struct  T1_GlyphSlotRec_
 117   {
 118     FT_GlyphSlotRec  root;
 119 
 120     FT_Bool          hint;
 121     FT_Bool          scaled;
 122 
 123     FT_Fixed         x_scale;
 124     FT_Fixed         y_scale;
 125 
 126     FT_Int           max_points;
 127     FT_Int           max_contours;
 128 
 129   } T1_GlyphSlotRec;
 130 
 131 
 132   FT_LOCAL( FT_Error )
 133   T1_Face_Init( FT_Stream      stream,
 134                 FT_Face        face,
 135                 FT_Int         face_index,


< prev index next >