(root)/
freetype-2.13.2/
src/
pfr/
pfrobjs.h
       1  /****************************************************************************
       2   *
       3   * pfrobjs.h
       4   *
       5   *   FreeType PFR object methods (specification).
       6   *
       7   * Copyright (C) 2002-2023 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  
      25  FT_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  
      91  FT_END_HEADER
      92  
      93  #endif /* PFROBJS_H_ */
      94  
      95  
      96  /* END */