/****************************************************************************
*
* svttcmap.h
*
* The FreeType TrueType/sfnt cmap extra information service.
*
* Copyright (C) 2003-2019 by
* Masatake YAMATO, Redhat K.K.,
* David Turner, Robert Wilhelm, and Werner Lemberg.
*
* This file is part of the FreeType project, and may only be used,
* modified, and distributed under the terms of the FreeType project
* license, LICENSE.TXT. By continuing to use, modify, or distribute
* this file you indicate that you have read the license and
* understand and accept it fully.
*
*/
/* Development of this service is support of
Information-technology Promotion Agency, Japan. */
#ifndef SVTTCMAP_H_
#define SVTTCMAP_H_
#include FT_INTERNAL_SERVICE_H
#include FT_TRUETYPE_TABLES_H
FT_BEGIN_HEADER
#define FT_SERVICE_ID_TT_CMAP "tt-cmaps"
/**************************************************************************
*
* @struct:
* TT_CMapInfo
*
* @description:
* A structure used to store TrueType/sfnt specific cmap information
* which is not covered by the generic @FT_CharMap structure. This
* structure can be accessed with the @FT_Get_TT_CMap_Info function.
*
* @fields:
* language ::
* The language ID used in Mac fonts. Definitions of values are in
* `ttnameid.h`.
*
* format ::
* The cmap format. OpenType 1.6 defines the formats 0 (byte encoding
* table), 2~(high-byte mapping through table), 4~(segment mapping to
* delta values), 6~(trimmed table mapping), 8~(mixed 16-bit and 32-bit
* coverage), 10~(trimmed array), 12~(segmented coverage), 13~(last
* resort font), and 14 (Unicode Variation Sequences).
*/
typedef struct TT_CMapInfo_
{
FT_ULong language;
FT_Long format;
} TT_CMapInfo;
typedef FT_Error
(*TT_CMap_Info_GetFunc)( FT_CharMap charmap,
TT_CMapInfo *cmap_info );
FT_DEFINE_SERVICE( TTCMaps )
{
TT_CMap_Info_GetFunc get_cmap_info;
};
#define FT_DEFINE_SERVICE_TTCMAPSREC( class_, get_cmap_info_ ) \
/**代码未完, 请加载全部代码(NowJava.com).**/