1 /***************************************************************************/
   2 /*                                                                         */
   3 /*  svpfr.h                                                                */
   4 /*                                                                         */
   5 /*    Internal PFR service functions (specification).                      */
   6 /*                                                                         */
   7 /*  Copyright 2003-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 SVPFR_H_
  20 #define SVPFR_H_
  21 
  22 #include FT_PFR_H
  23 #include FT_INTERNAL_SERVICE_H
  24 
  25 
  26 FT_BEGIN_HEADER
  27 
  28 
  29 #define FT_SERVICE_ID_PFR_METRICS  "pfr-metrics"
  30 
  31 
  32   typedef FT_Error
  33   (*FT_PFR_GetMetricsFunc)( FT_Face    face,
  34                             FT_UInt   *aoutline,
  35                             FT_UInt   *ametrics,
  36                             FT_Fixed  *ax_scale,
  37                             FT_Fixed  *ay_scale );
  38 
  39   typedef FT_Error
  40   (*FT_PFR_GetKerningFunc)( FT_Face     face,
  41                             FT_UInt     left,
  42                             FT_UInt     right,
  43                             FT_Vector  *avector );
  44 
  45   typedef FT_Error
  46   (*FT_PFR_GetAdvanceFunc)( FT_Face   face,
  47                             FT_UInt   gindex,
  48                             FT_Pos   *aadvance );
  49 
  50 
  51   FT_DEFINE_SERVICE( PfrMetrics )
  52   {
  53     FT_PFR_GetMetricsFunc  get_metrics;
  54     FT_PFR_GetKerningFunc  get_kerning;
  55     FT_PFR_GetAdvanceFunc  get_advance;
  56 
  57   };
  58 
  59  /* */
  60 
  61 FT_END_HEADER
  62 
  63 #endif /* SVPFR_H_ */
  64 
  65 
  66 /* END */