1 /**************************************************************************** 2 * 3 * svpfr.h 4 * 5 * Internal PFR service functions (specification). 6 * 7 * Copyright (C) 2003-2020 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 <freetype/ftpfr.h> 23 #include <freetype/internal/ftserv.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 FT_END_HEADER 61 62 #endif /* SVPFR_H_ */ 63 64 65 /* END */ 66