sdk-world v2026.11.05
PS2 SDK - world tier (copyleft-allowed, non-essential packages)
Loading...
Searching...
No Matches
svttcmap.h
Go to the documentation of this file.
1/****************************************************************************
2 *
3 * svttcmap.h
4 *
5 * The FreeType TrueType/sfnt cmap extra information service.
6 *
7 * Copyright (C) 2003-2025 by
8 * Masatake YAMATO, Redhat K.K.,
9 * David Turner, Robert Wilhelm, and Werner Lemberg.
10 *
11 * This file is part of the FreeType project, and may only be used,
12 * modified, and distributed under the terms of the FreeType project
13 * license, LICENSE.TXT. By continuing to use, modify, or distribute
14 * this file you indicate that you have read the license and
15 * understand and accept it fully.
16 *
17 */
18
19/* Development of this service is support of
20 Information-technology Promotion Agency, Japan. */
21
26#ifndef SVTTCMAP_H_
27#define SVTTCMAP_H_
28
30#include <freetype/tttables.h>
31
32
33FT_BEGIN_HEADER
34
35
36#define FT_SERVICE_ID_TT_CMAP "tt-cmaps"
37
38
39 /**************************************************************************
40 *
41 * @struct:
42 * TT_CMapInfo
43 *
44 * @description:
45 * A structure used to store TrueType/sfnt specific cmap information
46 * which is not covered by the generic @FT_CharMap structure. This
47 * structure can be accessed with the @FT_Get_TT_CMap_Info function.
48 *
49 * @fields:
50 * language ::
51 * The language ID used in Mac fonts. Definitions of values are in
52 * `ttnameid.h`.
53 *
54 * format ::
55 * The cmap format. OpenType 1.6 defines the formats 0 (byte encoding
56 * table), 2~(high-byte mapping through table), 4~(segment mapping to
57 * delta values), 6~(trimmed table mapping), 8~(mixed 16-bit and 32-bit
58 * coverage), 10~(trimmed array), 12~(segmented coverage), 13~(last
59 * resort font), and 14 (Unicode Variation Sequences).
60 */
61 typedef struct TT_CMapInfo_
62 {
63 FT_ULong language;
64 FT_Long format;
65
66 } TT_CMapInfo;
67
68
69 typedef FT_Error
70 (*TT_CMap_Info_GetFunc)( FT_CharMap charmap,
71 TT_CMapInfo *cmap_info );
72
73
74 FT_DEFINE_SERVICE( TTCMaps )
75 {
76 TT_CMap_Info_GetFunc get_cmap_info;
77 };
78
79
80#define FT_DEFINE_SERVICE_TTCMAPSREC( class_, get_cmap_info_ ) \
81 static const FT_Service_TTCMapsRec class_ = \
82 { \
83 get_cmap_info_ \
84 };
85
86 /* */
87
88
89FT_END_HEADER
90
91#endif /* SVTTCMAP_H_ */
92
93
94/* END */