tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

cffload.h (3298B)


      1 /****************************************************************************
      2 *
      3 * cffload.h
      4 *
      5 *   OpenType & CFF data/program tables loader (specification).
      6 *
      7 * Copyright (C) 1996-2025 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 */