1/***************************************************************************/ 2/* */ 3/* pfrobjs.h */ 4/* */ 5/* FreeType PFR object methods (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 PFROBJS_H_ 20#define PFROBJS_H_ 21 22#include "pfrtypes.h" 23 24 25FT_BEGIN_HEADER 26 27 typedef struct PFR_FaceRec_* PFR_Face; 28 29 typedef struct PFR_SizeRec_* PFR_Size; 30 31 typedef struct PFR_SlotRec_* PFR_Slot; 32 33 34 typedef struct PFR_FaceRec_ 35 { 36 FT_FaceRec root; 37 PFR_HeaderRec header; 38 PFR_LogFontRec log_font; 39 PFR_PhyFontRec phy_font; 40 41 } PFR_FaceRec; 42 43 44 typedef struct PFR_SizeRec_ 45 { 46 FT_SizeRec root; 47 48 } PFR_SizeRec; 49 50 51 typedef struct PFR_SlotRec_ 52 { 53 FT_GlyphSlotRec root; 54 PFR_GlyphRec glyph; 55 56 } PFR_SlotRec; 57 58 59 FT_LOCAL( FT_Error ) 60 pfr_face_init( FT_Stream stream, 61 FT_Face face, /* PFR_Face */ 62 FT_Int face_index, 63 FT_Int num_params, 64 FT_Parameter* params ); 65 66 FT_LOCAL( void ) 67 pfr_face_done( FT_Face face ); /* PFR_Face */ 68 69 70 FT_LOCAL( FT_Error ) 71 pfr_face_get_kerning( FT_Face face, /* PFR_Face */ 72 FT_UInt glyph1, 73 FT_UInt glyph2, 74 FT_Vector* kerning ); 75 76 77 FT_LOCAL( FT_Error ) 78 pfr_slot_init( FT_GlyphSlot slot ); /* PFR_Slot */ 79 80 FT_LOCAL( void ) 81 pfr_slot_done( FT_GlyphSlot slot ); /* PFR_Slot */ 82 83 84 FT_LOCAL( FT_Error ) 85 pfr_slot_load( FT_GlyphSlot slot, /* PFR_Slot */ 86 FT_Size size, /* PFR_Size */ 87 FT_UInt gindex, 88 FT_Int32 load_flags ); 89 90 91FT_END_HEADER 92 93#endif /* PFROBJS_H_ */ 94 95 96/* END */ 97