(root)/
freetype-2.13.2/
src/
cff/
cffload.h
       1  /****************************************************************************
       2   *
       3   * cffload.h
       4   *
       5   *   OpenType & CFF data/program tables loader (specification).
       6   *
       7   * Copyright (C) 1996-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 CFFLOAD_H_
      20  #define CFFLOAD_H_
      21  
      22  
      23  #include <freetype/internal/cfftypes.h>
      24  #include "cffparse.h"
      25  #include <freetype/internal/cffotypes.h>  /* for CFF_Face */
      26  
      27  
      28  FT_BEGIN_HEADER
      29  
      30    FT_LOCAL( FT_UShort )
      31    cff_get_standard_encoding( FT_UInt  charcode );
      32  
      33  
      34    FT_LOCAL( FT_String* )
      35    cff_index_get_string( CFF_Font  font,
      36                          FT_UInt   element );
      37  
      38    FT_LOCAL( FT_String* )
      39    cff_index_get_sid_string( CFF_Font  font,
      40                              FT_UInt   sid );
      41  
      42  
      43    FT_LOCAL( FT_Error )
      44    cff_index_access_element( CFF_Index  idx,
      45                              FT_UInt    element,
      46                              FT_Byte**  pbytes,
      47                              FT_ULong*  pbyte_len );
      48  
      49    FT_LOCAL( void )
      50    cff_index_forget_element( CFF_Index  idx,
      51                              FT_Byte**  pbytes );
      52  
      53    FT_LOCAL( FT_String* )
      54    cff_index_get_name( CFF_Font  font,
      55                        FT_UInt   element );
      56  
      57  
      58    FT_LOCAL( FT_UInt )
      59    cff_charset_cid_to_gindex( CFF_Charset  charset,
      60                               FT_UInt      cid );
      61  
      62  
      63    FT_LOCAL( FT_Error )
      64    cff_font_load( FT_Library  library,
      65                   FT_Stream   stream,
      66                   FT_Int      face_index,
      67                   CFF_Font    font,
      68                   CFF_Face    face,
      69                   FT_Bool     pure_cff,
      70                   FT_Bool     cff2 );
      71  
      72    FT_LOCAL( void )
      73    cff_font_done( CFF_Font  font );
      74  
      75  
      76    FT_LOCAL( FT_Error )
      77    cff_load_private_dict( CFF_Font     font,
      78                           CFF_SubFont  subfont,
      79                           FT_UInt      lenNDV,
      80                           FT_Fixed*    NDV );
      81  
      82    FT_LOCAL( FT_Byte )
      83    cff_fd_select_get( CFF_FDSelect  fdselect,
      84                       FT_UInt       glyph_index );
      85  
      86    FT_LOCAL( FT_Bool )
      87    cff_blend_check_vector( CFF_Blend  blend,
      88                            FT_UInt    vsindex,
      89                            FT_UInt    lenNDV,
      90                            FT_Fixed*  NDV );
      91  
      92    FT_LOCAL( FT_Error )
      93    cff_blend_build_vector( CFF_Blend  blend,
      94                            FT_UInt    vsindex,
      95                            FT_UInt    lenNDV,
      96                            FT_Fixed*  NDV );
      97  
      98    FT_LOCAL( void )
      99    cff_blend_clear( CFF_SubFont  subFont );
     100  
     101    FT_LOCAL( FT_Error )
     102    cff_blend_doBlend( CFF_SubFont  subfont,
     103                       CFF_Parser   parser,
     104                       FT_UInt      numBlends );
     105  
     106  #ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
     107    FT_LOCAL( FT_Error )
     108    cff_get_var_blend( FT_Face      face,
     109                       FT_UInt     *num_coords,
     110                       FT_Fixed*   *coords,
     111                       FT_Fixed*   *normalizedcoords,
     112                       FT_MM_Var*  *mm_var );
     113  
     114    FT_LOCAL( void )
     115    cff_done_blend( FT_Face  face );
     116  #endif
     117  
     118  
     119  FT_END_HEADER
     120  
     121  #endif /* CFFLOAD_H_ */
     122  
     123  
     124  /* END */