vrshoot

diff libs/ft2static/freetype/internal/services/svttcmap.h @ 0:b2f14e535253

initial commit
author John Tsiombikas <nuclear@member.fsf.org>
date Sat, 01 Feb 2014 19:58:19 +0200
parents
children
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/libs/ft2static/freetype/internal/services/svttcmap.h	Sat Feb 01 19:58:19 2014 +0200
     1.3 @@ -0,0 +1,106 @@
     1.4 +/***************************************************************************/
     1.5 +/*                                                                         */
     1.6 +/*  svttcmap.h                                                             */
     1.7 +/*                                                                         */
     1.8 +/*    The FreeType TrueType/sfnt cmap extra information service.           */
     1.9 +/*                                                                         */
    1.10 +/*  Copyright 2003 by                                                      */
    1.11 +/*  Masatake YAMATO, Redhat K.K.                                           */
    1.12 +/*                                                                         */
    1.13 +/*  Copyright 2003, 2008 by                                                */
    1.14 +/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
    1.15 +/*                                                                         */
    1.16 +/*  This file is part of the FreeType project, and may only be used,       */
    1.17 +/*  modified, and distributed under the terms of the FreeType project      */
    1.18 +/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
    1.19 +/*  this file you indicate that you have read the license and              */
    1.20 +/*  understand and accept it fully.                                        */
    1.21 +/*                                                                         */
    1.22 +/***************************************************************************/
    1.23 +
    1.24 +/* Development of this service is support of
    1.25 +   Information-technology Promotion Agency, Japan. */
    1.26 +
    1.27 +#ifndef __SVTTCMAP_H__
    1.28 +#define __SVTTCMAP_H__
    1.29 +
    1.30 +#include FT_INTERNAL_SERVICE_H
    1.31 +#include FT_TRUETYPE_TABLES_H
    1.32 +
    1.33 +
    1.34 +FT_BEGIN_HEADER
    1.35 +
    1.36 +
    1.37 +#define FT_SERVICE_ID_TT_CMAP "tt-cmaps"
    1.38 +
    1.39 +
    1.40 +  /*************************************************************************/
    1.41 +  /*                                                                       */
    1.42 +  /* <Struct>                                                              */
    1.43 +  /*    TT_CMapInfo                                                        */
    1.44 +  /*                                                                       */
    1.45 +  /* <Description>                                                         */
    1.46 +  /*    A structure used to store TrueType/sfnt specific cmap information  */
    1.47 +  /*    which is not covered by the generic @FT_CharMap structure.  This   */
    1.48 +  /*    structure can be accessed with the @FT_Get_TT_CMap_Info function.  */
    1.49 +  /*                                                                       */
    1.50 +  /* <Fields>                                                              */
    1.51 +  /*    language ::                                                        */
    1.52 +  /*      The language ID used in Mac fonts.  Definitions of values are in */
    1.53 +  /*      freetype/ttnameid.h.                                             */
    1.54 +  /*                                                                       */
    1.55 +  /*    format ::                                                          */
    1.56 +  /*      The cmap format.  OpenType 1.5 defines the formats 0 (byte       */
    1.57 +  /*      encoding table), 2~(high-byte mapping through table), 4~(segment */
    1.58 +  /*      mapping to delta values), 6~(trimmed table mapping), 8~(mixed    */
    1.59 +  /*      16-bit and 32-bit coverage), 10~(trimmed array), 12~(segmented   */
    1.60 +  /*      coverage), and 14 (Unicode Variation Sequences).                 */
    1.61 +  /*                                                                       */
    1.62 +  typedef struct  TT_CMapInfo_
    1.63 +  {
    1.64 +    FT_ULong language;
    1.65 +    FT_Long  format;
    1.66 +
    1.67 +  } TT_CMapInfo;
    1.68 +
    1.69 +
    1.70 +  typedef FT_Error
    1.71 +  (*TT_CMap_Info_GetFunc)( FT_CharMap    charmap,
    1.72 +                           TT_CMapInfo  *cmap_info );
    1.73 +
    1.74 +
    1.75 +  FT_DEFINE_SERVICE( TTCMaps )
    1.76 +  {
    1.77 +    TT_CMap_Info_GetFunc  get_cmap_info;
    1.78 +  };
    1.79 +
    1.80 +#ifndef FT_CONFIG_OPTION_PIC
    1.81 +
    1.82 +#define FT_DEFINE_SERVICE_TTCMAPSREC(class_, get_cmap_info_)  \
    1.83 +  static const FT_Service_TTCMapsRec class_ =                 \
    1.84 +  {                                                           \
    1.85 +    get_cmap_info_                                            \
    1.86 +  };
    1.87 +
    1.88 +#else /* FT_CONFIG_OPTION_PIC */ 
    1.89 +
    1.90 +#define FT_DEFINE_SERVICE_TTCMAPSREC(class_, get_cmap_info_) \
    1.91 +  void                                                       \
    1.92 +  FT_Init_Class_##class_( FT_Library library,                \
    1.93 +                          FT_Service_TTCMapsRec*  clazz)     \
    1.94 +  {                                                          \
    1.95 +    FT_UNUSED(library);                                      \
    1.96 +    clazz->get_cmap_info = get_cmap_info_;                   \
    1.97 +  } 
    1.98 +
    1.99 +#endif /* FT_CONFIG_OPTION_PIC */ 
   1.100 +
   1.101 +  /* */
   1.102 +
   1.103 +
   1.104 +FT_END_HEADER
   1.105 +
   1.106 +#endif /* __SVTTCMAP_H__ */
   1.107 +
   1.108 +
   1.109 +/* END */