(root)/
freetype-2.13.2/
src/
psaux/
t1cmap.h
       1  /****************************************************************************
       2   *
       3   * t1cmap.h
       4   *
       5   *   Type 1 character map support (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 T1CMAP_H_
      20  #define T1CMAP_H_
      21  
      22  #include <freetype/internal/ftobjs.h>
      23  #include <freetype/internal/t1types.h>
      24  
      25  FT_BEGIN_HEADER
      26  
      27  
      28    /*************************************************************************/
      29    /*************************************************************************/
      30    /*****                                                               *****/
      31    /*****          TYPE1 STANDARD (AND EXPERT) ENCODING CMAPS           *****/
      32    /*****                                                               *****/
      33    /*************************************************************************/
      34    /*************************************************************************/
      35  
      36    /* standard (and expert) encoding cmaps */
      37    typedef struct T1_CMapStdRec_*  T1_CMapStd;
      38  
      39    typedef struct  T1_CMapStdRec_
      40    {
      41      FT_CMapRec                cmap;
      42  
      43      const FT_UShort*          code_to_sid;
      44      PS_Adobe_Std_StringsFunc  sid_to_string;
      45  
      46      FT_UInt                   num_glyphs;
      47      const char* const*        glyph_names;
      48  
      49    } T1_CMapStdRec;
      50  
      51  
      52    FT_CALLBACK_TABLE const FT_CMap_ClassRec
      53    t1_cmap_standard_class_rec;
      54  
      55    FT_CALLBACK_TABLE const FT_CMap_ClassRec
      56    t1_cmap_expert_class_rec;
      57  
      58  
      59    /*************************************************************************/
      60    /*************************************************************************/
      61    /*****                                                               *****/
      62    /*****                  TYPE1 CUSTOM ENCODING CMAP                   *****/
      63    /*****                                                               *****/
      64    /*************************************************************************/
      65    /*************************************************************************/
      66  
      67    typedef struct T1_CMapCustomRec_*  T1_CMapCustom;
      68  
      69    typedef struct  T1_CMapCustomRec_
      70    {
      71      FT_CMapRec  cmap;
      72      FT_UInt     first;
      73      FT_UInt     count;
      74      FT_UShort*  indices;
      75  
      76    } T1_CMapCustomRec;
      77  
      78  
      79    FT_CALLBACK_TABLE const FT_CMap_ClassRec
      80    t1_cmap_custom_class_rec;
      81  
      82  
      83    /*************************************************************************/
      84    /*************************************************************************/
      85    /*****                                                               *****/
      86    /*****             TYPE1 SYNTHETIC UNICODE ENCODING CMAP             *****/
      87    /*****                                                               *****/
      88    /*************************************************************************/
      89    /*************************************************************************/
      90  
      91    /* unicode (synthetic) cmaps */
      92  
      93    FT_CALLBACK_TABLE const FT_CMap_ClassRec
      94    t1_cmap_unicode_class_rec;
      95  
      96   /* */
      97  
      98  
      99  FT_END_HEADER
     100  
     101  #endif /* T1CMAP_H_ */
     102  
     103  
     104  /* END */