pfrobjs.h 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. /***************************************************************************/
  2. /* */
  3. /* pfrobjs.h */
  4. /* */
  5. /* FreeType PFR object methods (specification). */
  6. /* */
  7. /* Copyright 2002 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. #ifndef __PFROBJS_H__
  18. #define __PFROBJS_H__
  19. #include "pfrtypes.h"
  20. FT_BEGIN_HEADER
  21. typedef struct PFR_FaceRec_* PFR_Face;
  22. typedef struct PFR_SizeRec_* PFR_Size;
  23. typedef struct PFR_SlotRec_* PFR_Slot;
  24. typedef struct PFR_FaceRec_
  25. {
  26. FT_FaceRec root;
  27. PFR_HeaderRec header;
  28. PFR_LogFontRec log_font;
  29. PFR_PhyFontRec phy_font;
  30. } PFR_FaceRec;
  31. typedef struct PFR_SizeRec_
  32. {
  33. FT_SizeRec root;
  34. } PFR_SizeRec;
  35. typedef struct PFR_SlotRec_
  36. {
  37. FT_GlyphSlotRec root;
  38. PFR_GlyphRec glyph;
  39. } PFR_SlotRec;
  40. FT_LOCAL( FT_Error )
  41. pfr_face_init( FT_Stream stream,
  42. PFR_Face face,
  43. FT_Int face_index,
  44. FT_Int num_params,
  45. FT_Parameter* params );
  46. FT_LOCAL( void )
  47. pfr_face_done( PFR_Face face );
  48. FT_LOCAL( FT_Error )
  49. pfr_face_get_kerning( PFR_Face face,
  50. FT_UInt glyph1,
  51. FT_UInt glyph2,
  52. FT_Vector* kerning );
  53. FT_LOCAL( FT_Error )
  54. pfr_slot_init( PFR_Slot slot );
  55. FT_LOCAL( void )
  56. pfr_slot_done( PFR_Slot slot );
  57. FT_LOCAL( FT_Error )
  58. pfr_slot_load( PFR_Slot slot,
  59. PFR_Size size,
  60. FT_UInt gindex,
  61. FT_Int32 load_flags );
  62. FT_END_HEADER
  63. #endif /* __PFROBJS_H__ */
  64. /* END */