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 FT_DEFINE_SERVICE(PfrMetrics)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 */ 67