jassub 1.7.10 → 1.7.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/LICENSE +22 -22
  2. package/README.md +251 -251
  3. package/dist/jassub-worker.wasm +0 -0
  4. package/dist/jassub-worker.wasm.js +1 -1
  5. package/dist/jassub.es.js +1 -1
  6. package/dist/jassub.umd.js +1 -1
  7. package/dist/js/jassub-worker.js +4 -4
  8. package/dist/js/jassub-worker.wasm +0 -0
  9. package/dist/js/jassub-worker.wasm.js +26 -25
  10. package/dist/js/jassub.js +832 -832
  11. package/dist/libraries/bin/brotli.js +1 -0
  12. package/dist/libraries/include/ass/ass.h +812 -0
  13. package/dist/libraries/include/ass/ass_types.h +292 -0
  14. package/dist/libraries/include/brotli/decode.h +344 -0
  15. package/dist/libraries/include/brotli/encode.h +448 -0
  16. package/dist/libraries/include/brotli/port.h +288 -0
  17. package/dist/libraries/include/brotli/types.h +83 -0
  18. package/dist/libraries/include/expat.h +1064 -0
  19. package/dist/libraries/include/expat_config.h +115 -0
  20. package/dist/libraries/include/expat_external.h +165 -0
  21. package/dist/libraries/include/fontconfig/fcfreetype.h +59 -0
  22. package/dist/libraries/include/fontconfig/fcprivate.h +134 -0
  23. package/dist/libraries/include/fontconfig/fontconfig.h +1154 -0
  24. package/dist/libraries/include/freetype2/freetype/config/ftconfig.h +63 -0
  25. package/dist/libraries/include/freetype2/freetype/config/ftheader.h +824 -0
  26. package/dist/libraries/include/freetype2/freetype/config/ftmodule.h +20 -0
  27. package/dist/libraries/include/freetype2/freetype/config/ftoption.h +1011 -0
  28. package/dist/libraries/include/freetype2/freetype/config/ftstdlib.h +175 -0
  29. package/dist/libraries/include/freetype2/freetype/config/integer-types.h +245 -0
  30. package/dist/libraries/include/freetype2/freetype/config/mac-support.h +49 -0
  31. package/dist/libraries/include/freetype2/freetype/config/public-macros.h +120 -0
  32. package/dist/libraries/include/freetype2/freetype/freetype.h +4833 -0
  33. package/dist/libraries/include/freetype2/freetype/ftadvanc.h +188 -0
  34. package/dist/libraries/include/freetype2/freetype/ftbbox.h +101 -0
  35. package/dist/libraries/include/freetype2/freetype/ftbdf.h +212 -0
  36. package/dist/libraries/include/freetype2/freetype/ftbitmap.h +329 -0
  37. package/dist/libraries/include/freetype2/freetype/ftbzip2.h +102 -0
  38. package/dist/libraries/include/freetype2/freetype/ftcache.h +1087 -0
  39. package/dist/libraries/include/freetype2/freetype/ftchapters.h +147 -0
  40. package/dist/libraries/include/freetype2/freetype/ftcid.h +167 -0
  41. package/dist/libraries/include/freetype2/freetype/ftcolor.h +1609 -0
  42. package/dist/libraries/include/freetype2/freetype/ftdriver.h +1193 -0
  43. package/dist/libraries/include/freetype2/freetype/fterrdef.h +279 -0
  44. package/dist/libraries/include/freetype2/freetype/fterrors.h +296 -0
  45. package/dist/libraries/include/freetype2/freetype/ftfntfmt.h +93 -0
  46. package/dist/libraries/include/freetype2/freetype/ftgasp.h +143 -0
  47. package/dist/libraries/include/freetype2/freetype/ftglyph.h +664 -0
  48. package/dist/libraries/include/freetype2/freetype/ftgxval.h +354 -0
  49. package/dist/libraries/include/freetype2/freetype/ftgzip.h +151 -0
  50. package/dist/libraries/include/freetype2/freetype/ftimage.h +1276 -0
  51. package/dist/libraries/include/freetype2/freetype/ftincrem.h +348 -0
  52. package/dist/libraries/include/freetype2/freetype/ftlcdfil.h +323 -0
  53. package/dist/libraries/include/freetype2/freetype/ftlist.h +296 -0
  54. package/dist/libraries/include/freetype2/freetype/ftlogging.h +184 -0
  55. package/dist/libraries/include/freetype2/freetype/ftlzw.h +100 -0
  56. package/dist/libraries/include/freetype2/freetype/ftmac.h +289 -0
  57. package/dist/libraries/include/freetype2/freetype/ftmm.h +752 -0
  58. package/dist/libraries/include/freetype2/freetype/ftmodapi.h +806 -0
  59. package/dist/libraries/include/freetype2/freetype/ftmoderr.h +204 -0
  60. package/dist/libraries/include/freetype2/freetype/ftotval.h +206 -0
  61. package/dist/libraries/include/freetype2/freetype/ftoutln.h +586 -0
  62. package/dist/libraries/include/freetype2/freetype/ftparams.h +203 -0
  63. package/dist/libraries/include/freetype2/freetype/ftpfr.h +179 -0
  64. package/dist/libraries/include/freetype2/freetype/ftrender.h +244 -0
  65. package/dist/libraries/include/freetype2/freetype/ftsizes.h +159 -0
  66. package/dist/libraries/include/freetype2/freetype/ftsnames.h +272 -0
  67. package/dist/libraries/include/freetype2/freetype/ftstroke.h +773 -0
  68. package/dist/libraries/include/freetype2/freetype/ftsynth.h +83 -0
  69. package/dist/libraries/include/freetype2/freetype/ftsystem.h +352 -0
  70. package/dist/libraries/include/freetype2/freetype/fttrigon.h +350 -0
  71. package/dist/libraries/include/freetype2/freetype/fttypes.h +615 -0
  72. package/dist/libraries/include/freetype2/freetype/ftwinfnt.h +276 -0
  73. package/dist/libraries/include/freetype2/freetype/t1tables.h +773 -0
  74. package/dist/libraries/include/freetype2/freetype/ttnameid.h +1235 -0
  75. package/dist/libraries/include/freetype2/freetype/tttables.h +855 -0
  76. package/dist/libraries/include/freetype2/freetype/tttags.h +123 -0
  77. package/dist/libraries/include/freetype2/ft2build.h +42 -0
  78. package/dist/libraries/include/fribidi/fribidi-arabic.h +81 -0
  79. package/dist/libraries/include/fribidi/fribidi-begindecls.h +3 -0
  80. package/dist/libraries/include/fribidi/fribidi-bidi-types-list.h +96 -0
  81. package/dist/libraries/include/fribidi/fribidi-bidi-types.h +405 -0
  82. package/dist/libraries/include/fribidi/fribidi-bidi.h +142 -0
  83. package/dist/libraries/include/fribidi/fribidi-brackets.h +89 -0
  84. package/dist/libraries/include/fribidi/fribidi-char-sets-list.h +54 -0
  85. package/dist/libraries/include/fribidi/fribidi-char-sets.h +106 -0
  86. package/dist/libraries/include/fribidi/fribidi-common.h +158 -0
  87. package/dist/libraries/include/fribidi/fribidi-config.h +23 -0
  88. package/dist/libraries/include/fribidi/fribidi-deprecated.h +175 -0
  89. package/dist/libraries/include/fribidi/fribidi-enddecls.h +3 -0
  90. package/dist/libraries/include/fribidi/fribidi-flags.h +72 -0
  91. package/dist/libraries/include/fribidi/fribidi-joining-types-list.h +44 -0
  92. package/dist/libraries/include/fribidi/fribidi-joining-types.h +249 -0
  93. package/dist/libraries/include/fribidi/fribidi-joining.h +74 -0
  94. package/dist/libraries/include/fribidi/fribidi-mirroring.h +86 -0
  95. package/dist/libraries/include/fribidi/fribidi-shape.h +71 -0
  96. package/dist/libraries/include/fribidi/fribidi-types.h +79 -0
  97. package/dist/libraries/include/fribidi/fribidi-unicode-version.h +10 -0
  98. package/dist/libraries/include/fribidi/fribidi-unicode.h +105 -0
  99. package/dist/libraries/include/fribidi/fribidi.h +129 -0
  100. package/dist/libraries/include/harfbuzz/hb-aat-layout.h +795 -0
  101. package/dist/libraries/include/harfbuzz/hb-aat.h +38 -0
  102. package/dist/libraries/include/harfbuzz/hb-blob.h +160 -0
  103. package/dist/libraries/include/harfbuzz/hb-buffer.h +799 -0
  104. package/dist/libraries/include/harfbuzz/hb-common.h +902 -0
  105. package/dist/libraries/include/harfbuzz/hb-cplusplus.hh +221 -0
  106. package/dist/libraries/include/harfbuzz/hb-deprecated.h +251 -0
  107. package/dist/libraries/include/harfbuzz/hb-draw.h +325 -0
  108. package/dist/libraries/include/harfbuzz/hb-face.h +181 -0
  109. package/dist/libraries/include/harfbuzz/hb-font.h +1108 -0
  110. package/dist/libraries/include/harfbuzz/hb-ft.h +145 -0
  111. package/dist/libraries/include/harfbuzz/hb-map.h +124 -0
  112. package/dist/libraries/include/harfbuzz/hb-ot-color.h +146 -0
  113. package/dist/libraries/include/harfbuzz/hb-ot-deprecated.h +141 -0
  114. package/dist/libraries/include/harfbuzz/hb-ot-font.h +45 -0
  115. package/dist/libraries/include/harfbuzz/hb-ot-layout.h +503 -0
  116. package/dist/libraries/include/harfbuzz/hb-ot-math.h +333 -0
  117. package/dist/libraries/include/harfbuzz/hb-ot-meta.h +72 -0
  118. package/dist/libraries/include/harfbuzz/hb-ot-metrics.h +129 -0
  119. package/dist/libraries/include/harfbuzz/hb-ot-name.h +158 -0
  120. package/dist/libraries/include/harfbuzz/hb-ot-shape.h +53 -0
  121. package/dist/libraries/include/harfbuzz/hb-ot-var.h +191 -0
  122. package/dist/libraries/include/harfbuzz/hb-ot.h +49 -0
  123. package/dist/libraries/include/harfbuzz/hb-set.h +200 -0
  124. package/dist/libraries/include/harfbuzz/hb-shape-plan.h +122 -0
  125. package/dist/libraries/include/harfbuzz/hb-shape.h +62 -0
  126. package/dist/libraries/include/harfbuzz/hb-style.h +81 -0
  127. package/dist/libraries/include/harfbuzz/hb-subset-repacker.h +81 -0
  128. package/dist/libraries/include/harfbuzz/hb-subset.h +234 -0
  129. package/dist/libraries/include/harfbuzz/hb-unicode.h +643 -0
  130. package/dist/libraries/include/harfbuzz/hb-version.h +95 -0
  131. package/dist/libraries/include/harfbuzz/hb.h +50 -0
  132. package/dist/libraries/lib/cmake/expat-2.4.7/expat-config-version.cmake +70 -0
  133. package/dist/libraries/lib/cmake/expat-2.4.7/expat-config.cmake +99 -0
  134. package/dist/libraries/lib/cmake/expat-2.4.7/expat-noconfig.cmake +19 -0
  135. package/dist/libraries/lib/cmake/expat-2.4.7/expat.cmake +99 -0
  136. package/dist/libraries/lib/libass.a +0 -0
  137. package/dist/libraries/lib/libass.la +41 -0
  138. package/dist/libraries/lib/libbrotlicommon.a +0 -0
  139. package/dist/libraries/lib/libbrotlidec.a +0 -0
  140. package/dist/libraries/lib/libbrotlienc.a +0 -0
  141. package/dist/libraries/lib/libexpat.a +0 -0
  142. package/dist/libraries/lib/libfontconfig.a +0 -0
  143. package/dist/libraries/lib/libfontconfig.la +41 -0
  144. package/dist/libraries/lib/libfreetype.a +0 -0
  145. package/dist/libraries/lib/libfreetype.la +41 -0
  146. package/dist/libraries/lib/libfribidi.a +0 -0
  147. package/dist/libraries/lib/libfribidi.la +41 -0
  148. package/dist/libraries/lib/libharfbuzz-subset.a +0 -0
  149. package/dist/libraries/lib/libharfbuzz-subset.la +41 -0
  150. package/dist/libraries/lib/libharfbuzz.a +0 -0
  151. package/dist/libraries/lib/libharfbuzz.la +41 -0
  152. package/dist/libraries/lib/pkgconfig/expat.pc +11 -0
  153. package/dist/libraries/lib/pkgconfig/fontconfig.pc +18 -0
  154. package/dist/libraries/lib/pkgconfig/freetype2.pc +14 -0
  155. package/dist/libraries/lib/pkgconfig/fribidi.pc +13 -0
  156. package/dist/libraries/lib/pkgconfig/harfbuzz-subset.pc +12 -0
  157. package/dist/libraries/lib/pkgconfig/harfbuzz.pc +13 -0
  158. package/dist/libraries/lib/pkgconfig/libass.pc +13 -0
  159. package/dist/libraries/lib/pkgconfig/libbrotlicommon.pc +11 -0
  160. package/dist/libraries/lib/pkgconfig/libbrotlidec.pc +12 -0
  161. package/dist/libraries/lib/pkgconfig/libbrotlienc.pc +12 -0
  162. package/dist/libraries/share/aclocal/freetype2.m4 +194 -0
  163. package/dist/libraries/share/doc/expat/AUTHORS +10 -0
  164. package/dist/libraries/share/doc/expat/changelog +1161 -0
  165. package/index.d.ts +115 -115
  166. package/package.json +1 -1
@@ -0,0 +1,1154 @@
1
+ /*
2
+ * fontconfig/fontconfig/fontconfig.h
3
+ *
4
+ * Copyright © 2001 Keith Packard
5
+ *
6
+ * Permission to use, copy, modify, distribute, and sell this software and its
7
+ * documentation for any purpose is hereby granted without fee, provided that
8
+ * the above copyright notice appear in all copies and that both that
9
+ * copyright notice and this permission notice appear in supporting
10
+ * documentation, and that the name of the author(s) not be used in
11
+ * advertising or publicity pertaining to distribution of the software without
12
+ * specific, written prior permission. The authors make no
13
+ * representations about the suitability of this software for any purpose. It
14
+ * is provided "as is" without express or implied warranty.
15
+ *
16
+ * THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
17
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
18
+ * EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
19
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
20
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
21
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
22
+ * PERFORMANCE OF THIS SOFTWARE.
23
+ */
24
+
25
+ #ifndef _FONTCONFIG_H_
26
+ #define _FONTCONFIG_H_
27
+
28
+ #include <sys/types.h>
29
+ #include <sys/stat.h>
30
+ #include <stdarg.h>
31
+ #include <limits.h>
32
+
33
+ #if defined(__GNUC__) && (__GNUC__ >= 4)
34
+ #define FC_ATTRIBUTE_SENTINEL(x) __attribute__((__sentinel__(0)))
35
+ #else
36
+ #define FC_ATTRIBUTE_SENTINEL(x)
37
+ #endif
38
+
39
+ #ifndef FcPublic
40
+ #define FcPublic
41
+ #endif
42
+
43
+ typedef unsigned char FcChar8;
44
+ typedef unsigned short FcChar16;
45
+ typedef unsigned int FcChar32;
46
+ typedef int FcBool;
47
+
48
+ /*
49
+ * Current Fontconfig version number. This same number
50
+ * must appear in the fontconfig configure.in file. Yes,
51
+ * it'a a pain to synchronize version numbers like this.
52
+ */
53
+
54
+ #define FC_MAJOR 2
55
+ #define FC_MINOR 13
56
+ #define FC_REVISION 96
57
+
58
+ #define FC_VERSION ((FC_MAJOR * 10000) + (FC_MINOR * 100) + (FC_REVISION))
59
+
60
+ /*
61
+ * Current font cache file format version
62
+ * This is appended to the cache files so that multiple
63
+ * versions of the library will peacefully coexist
64
+ *
65
+ * Change this value whenever the disk format for the cache file
66
+ * changes in any non-compatible way. Try to avoid such changes as
67
+ * it means multiple copies of the font information.
68
+ */
69
+
70
+ #define FC_CACHE_VERSION_NUMBER 8
71
+ #define _FC_STRINGIFY_(s) #s
72
+ #define _FC_STRINGIFY(s) _FC_STRINGIFY_(s)
73
+ #define FC_CACHE_VERSION _FC_STRINGIFY(FC_CACHE_VERSION_NUMBER)
74
+
75
+ #define FcFalse 0
76
+ #define FcTrue 1
77
+ #define FcDontCare 2
78
+
79
+ #define FC_FAMILY "family" /* String */
80
+ #define FC_STYLE "style" /* String */
81
+ #define FC_SLANT "slant" /* Int */
82
+ #define FC_WEIGHT "weight" /* Int */
83
+ #define FC_SIZE "size" /* Range (double) */
84
+ #define FC_ASPECT "aspect" /* Double */
85
+ #define FC_PIXEL_SIZE "pixelsize" /* Double */
86
+ #define FC_SPACING "spacing" /* Int */
87
+ #define FC_FOUNDRY "foundry" /* String */
88
+ #define FC_ANTIALIAS "antialias" /* Bool (depends) */
89
+ #define FC_HINTING "hinting" /* Bool (true) */
90
+ #define FC_HINT_STYLE "hintstyle" /* Int */
91
+ #define FC_VERTICAL_LAYOUT "verticallayout" /* Bool (false) */
92
+ #define FC_AUTOHINT "autohint" /* Bool (false) */
93
+ /* FC_GLOBAL_ADVANCE is deprecated. this is simply ignored on freetype 2.4.5 or later */
94
+ #define FC_GLOBAL_ADVANCE "globaladvance" /* Bool (true) */
95
+ #define FC_WIDTH "width" /* Int */
96
+ #define FC_FILE "file" /* String */
97
+ #define FC_INDEX "index" /* Int */
98
+ #define FC_FT_FACE "ftface" /* FT_Face */
99
+ #define FC_RASTERIZER "rasterizer" /* String (deprecated) */
100
+ #define FC_OUTLINE "outline" /* Bool */
101
+ #define FC_SCALABLE "scalable" /* Bool */
102
+ #define FC_COLOR "color" /* Bool */
103
+ #define FC_VARIABLE "variable" /* Bool */
104
+ #define FC_SCALE "scale" /* double (deprecated) */
105
+ #define FC_SYMBOL "symbol" /* Bool */
106
+ #define FC_DPI "dpi" /* double */
107
+ #define FC_RGBA "rgba" /* Int */
108
+ #define FC_MINSPACE "minspace" /* Bool use minimum line spacing */
109
+ #define FC_SOURCE "source" /* String (deprecated) */
110
+ #define FC_CHARSET "charset" /* CharSet */
111
+ #define FC_LANG "lang" /* LangSet Set of RFC 3066 langs */
112
+ #define FC_FONTVERSION "fontversion" /* Int from 'head' table */
113
+ #define FC_FULLNAME "fullname" /* String */
114
+ #define FC_FAMILYLANG "familylang" /* String RFC 3066 langs */
115
+ #define FC_STYLELANG "stylelang" /* String RFC 3066 langs */
116
+ #define FC_FULLNAMELANG "fullnamelang" /* String RFC 3066 langs */
117
+ #define FC_CAPABILITY "capability" /* String */
118
+ #define FC_FONTFORMAT "fontformat" /* String */
119
+ #define FC_EMBOLDEN "embolden" /* Bool - true if emboldening needed*/
120
+ #define FC_EMBEDDED_BITMAP "embeddedbitmap" /* Bool - true to enable embedded bitmaps */
121
+ #define FC_DECORATIVE "decorative" /* Bool - true if style is a decorative variant */
122
+ #define FC_LCD_FILTER "lcdfilter" /* Int */
123
+ #define FC_FONT_FEATURES "fontfeatures" /* String */
124
+ #define FC_FONT_VARIATIONS "fontvariations" /* String */
125
+ #define FC_NAMELANG "namelang" /* String RFC 3866 langs */
126
+ #define FC_PRGNAME "prgname" /* String */
127
+ #define FC_HASH "hash" /* String (deprecated) */
128
+ #define FC_POSTSCRIPT_NAME "postscriptname" /* String */
129
+ #define FC_FONT_HAS_HINT "fonthashint" /* Bool - true if font has hinting */
130
+ #define FC_ORDER "order" /* Integer */
131
+
132
+ #define FC_CACHE_SUFFIX ".cache-" FC_CACHE_VERSION
133
+ #define FC_DIR_CACHE_FILE "fonts.cache-" FC_CACHE_VERSION
134
+ #define FC_USER_CACHE_FILE ".fonts.cache-" FC_CACHE_VERSION
135
+
136
+ /* Adjust outline rasterizer */
137
+ #define FC_CHARWIDTH "charwidth" /* Int */
138
+ #define FC_CHAR_WIDTH FC_CHARWIDTH
139
+ #define FC_CHAR_HEIGHT "charheight"/* Int */
140
+ #define FC_MATRIX "matrix" /* FcMatrix */
141
+
142
+ #define FC_WEIGHT_THIN 0
143
+ #define FC_WEIGHT_EXTRALIGHT 40
144
+ #define FC_WEIGHT_ULTRALIGHT FC_WEIGHT_EXTRALIGHT
145
+ #define FC_WEIGHT_LIGHT 50
146
+ #define FC_WEIGHT_DEMILIGHT 55
147
+ #define FC_WEIGHT_SEMILIGHT FC_WEIGHT_DEMILIGHT
148
+ #define FC_WEIGHT_BOOK 75
149
+ #define FC_WEIGHT_REGULAR 80
150
+ #define FC_WEIGHT_NORMAL FC_WEIGHT_REGULAR
151
+ #define FC_WEIGHT_MEDIUM 100
152
+ #define FC_WEIGHT_DEMIBOLD 180
153
+ #define FC_WEIGHT_SEMIBOLD FC_WEIGHT_DEMIBOLD
154
+ #define FC_WEIGHT_BOLD 200
155
+ #define FC_WEIGHT_EXTRABOLD 205
156
+ #define FC_WEIGHT_ULTRABOLD FC_WEIGHT_EXTRABOLD
157
+ #define FC_WEIGHT_BLACK 210
158
+ #define FC_WEIGHT_HEAVY FC_WEIGHT_BLACK
159
+ #define FC_WEIGHT_EXTRABLACK 215
160
+ #define FC_WEIGHT_ULTRABLACK FC_WEIGHT_EXTRABLACK
161
+
162
+ #define FC_SLANT_ROMAN 0
163
+ #define FC_SLANT_ITALIC 100
164
+ #define FC_SLANT_OBLIQUE 110
165
+
166
+ #define FC_WIDTH_ULTRACONDENSED 50
167
+ #define FC_WIDTH_EXTRACONDENSED 63
168
+ #define FC_WIDTH_CONDENSED 75
169
+ #define FC_WIDTH_SEMICONDENSED 87
170
+ #define FC_WIDTH_NORMAL 100
171
+ #define FC_WIDTH_SEMIEXPANDED 113
172
+ #define FC_WIDTH_EXPANDED 125
173
+ #define FC_WIDTH_EXTRAEXPANDED 150
174
+ #define FC_WIDTH_ULTRAEXPANDED 200
175
+
176
+ #define FC_PROPORTIONAL 0
177
+ #define FC_DUAL 90
178
+ #define FC_MONO 100
179
+ #define FC_CHARCELL 110
180
+
181
+ /* sub-pixel order */
182
+ #define FC_RGBA_UNKNOWN 0
183
+ #define FC_RGBA_RGB 1
184
+ #define FC_RGBA_BGR 2
185
+ #define FC_RGBA_VRGB 3
186
+ #define FC_RGBA_VBGR 4
187
+ #define FC_RGBA_NONE 5
188
+
189
+ /* hinting style */
190
+ #define FC_HINT_NONE 0
191
+ #define FC_HINT_SLIGHT 1
192
+ #define FC_HINT_MEDIUM 2
193
+ #define FC_HINT_FULL 3
194
+
195
+ /* LCD filter */
196
+ #define FC_LCD_NONE 0
197
+ #define FC_LCD_DEFAULT 1
198
+ #define FC_LCD_LIGHT 2
199
+ #define FC_LCD_LEGACY 3
200
+
201
+ typedef enum _FcType {
202
+ FcTypeUnknown = -1,
203
+ FcTypeVoid,
204
+ FcTypeInteger,
205
+ FcTypeDouble,
206
+ FcTypeString,
207
+ FcTypeBool,
208
+ FcTypeMatrix,
209
+ FcTypeCharSet,
210
+ FcTypeFTFace,
211
+ FcTypeLangSet,
212
+ FcTypeRange
213
+ } FcType;
214
+
215
+ typedef struct _FcMatrix {
216
+ double xx, xy, yx, yy;
217
+ } FcMatrix;
218
+
219
+ #define FcMatrixInit(m) ((m)->xx = (m)->yy = 1, \
220
+ (m)->xy = (m)->yx = 0)
221
+
222
+ /*
223
+ * A data structure to represent the available glyphs in a font.
224
+ * This is represented as a sparse boolean btree.
225
+ */
226
+
227
+ typedef struct _FcCharSet FcCharSet;
228
+
229
+ typedef struct _FcObjectType {
230
+ char *object;
231
+ FcType type;
232
+ } FcObjectType;
233
+
234
+ typedef struct _FcConstant {
235
+ const FcChar8 *name;
236
+ const char *object;
237
+ int value;
238
+ } FcConstant;
239
+
240
+ typedef enum _FcResult {
241
+ FcResultMatch, FcResultNoMatch, FcResultTypeMismatch, FcResultNoId,
242
+ FcResultOutOfMemory
243
+ } FcResult;
244
+
245
+ typedef enum _FcValueBinding {
246
+ FcValueBindingWeak, FcValueBindingStrong, FcValueBindingSame,
247
+ /* to make sure sizeof (FcValueBinding) == 4 even with -fshort-enums */
248
+ FcValueBindingEnd = INT_MAX
249
+ } FcValueBinding;
250
+
251
+ typedef struct _FcPattern FcPattern;
252
+
253
+ typedef struct _FcPatternIter {
254
+ void *dummy1;
255
+ void *dummy2;
256
+ } FcPatternIter;
257
+
258
+ typedef struct _FcLangSet FcLangSet;
259
+
260
+ typedef struct _FcRange FcRange;
261
+
262
+ typedef struct _FcValue {
263
+ FcType type;
264
+ union {
265
+ const FcChar8 *s;
266
+ int i;
267
+ FcBool b;
268
+ double d;
269
+ const FcMatrix *m;
270
+ const FcCharSet *c;
271
+ void *f;
272
+ const FcLangSet *l;
273
+ const FcRange *r;
274
+ } u;
275
+ } FcValue;
276
+
277
+ typedef struct _FcFontSet {
278
+ int nfont;
279
+ int sfont;
280
+ FcPattern **fonts;
281
+ } FcFontSet;
282
+
283
+ typedef struct _FcObjectSet {
284
+ int nobject;
285
+ int sobject;
286
+ const char **objects;
287
+ } FcObjectSet;
288
+
289
+ typedef enum _FcMatchKind {
290
+ FcMatchPattern, FcMatchFont, FcMatchScan,
291
+ FcMatchKindEnd,
292
+ FcMatchKindBegin = FcMatchPattern
293
+ } FcMatchKind;
294
+
295
+ typedef enum _FcLangResult {
296
+ FcLangEqual = 0,
297
+ FcLangDifferentCountry = 1,
298
+ FcLangDifferentTerritory = 1,
299
+ FcLangDifferentLang = 2
300
+ } FcLangResult;
301
+
302
+ typedef enum _FcSetName {
303
+ FcSetSystem = 0,
304
+ FcSetApplication = 1
305
+ } FcSetName;
306
+
307
+ typedef struct _FcConfigFileInfoIter {
308
+ void *dummy1;
309
+ void *dummy2;
310
+ void *dummy3;
311
+ } FcConfigFileInfoIter;
312
+
313
+ typedef struct _FcAtomic FcAtomic;
314
+
315
+ #if defined(__cplusplus) || defined(c_plusplus) /* for C++ V2.0 */
316
+ #define _FCFUNCPROTOBEGIN extern "C" { /* do not leave open across includes */
317
+ #define _FCFUNCPROTOEND }
318
+ #else
319
+ #define _FCFUNCPROTOBEGIN
320
+ #define _FCFUNCPROTOEND
321
+ #endif
322
+
323
+ typedef enum { FcEndianBig, FcEndianLittle } FcEndian;
324
+
325
+ typedef struct _FcConfig FcConfig;
326
+
327
+ typedef struct _FcGlobalCache FcFileCache;
328
+
329
+ typedef struct _FcBlanks FcBlanks;
330
+
331
+ typedef struct _FcStrList FcStrList;
332
+
333
+ typedef struct _FcStrSet FcStrSet;
334
+
335
+ typedef struct _FcCache FcCache;
336
+
337
+ _FCFUNCPROTOBEGIN
338
+
339
+ /* fcblanks.c */
340
+ FcPublic FcBlanks *
341
+ FcBlanksCreate (void);
342
+
343
+ FcPublic void
344
+ FcBlanksDestroy (FcBlanks *b);
345
+
346
+ FcPublic FcBool
347
+ FcBlanksAdd (FcBlanks *b, FcChar32 ucs4);
348
+
349
+ FcPublic FcBool
350
+ FcBlanksIsMember (FcBlanks *b, FcChar32 ucs4);
351
+
352
+ /* fccache.c */
353
+
354
+ FcPublic const FcChar8 *
355
+ FcCacheDir(const FcCache *c);
356
+
357
+ FcPublic FcFontSet *
358
+ FcCacheCopySet(const FcCache *c);
359
+
360
+ FcPublic const FcChar8 *
361
+ FcCacheSubdir (const FcCache *c, int i);
362
+
363
+ FcPublic int
364
+ FcCacheNumSubdir (const FcCache *c);
365
+
366
+ FcPublic int
367
+ FcCacheNumFont (const FcCache *c);
368
+
369
+ FcPublic FcBool
370
+ FcDirCacheUnlink (const FcChar8 *dir, FcConfig *config);
371
+
372
+ FcPublic FcBool
373
+ FcDirCacheValid (const FcChar8 *cache_file);
374
+
375
+ FcPublic FcBool
376
+ FcDirCacheClean (const FcChar8 *cache_dir, FcBool verbose);
377
+
378
+ FcPublic void
379
+ FcCacheCreateTagFile (FcConfig *config);
380
+
381
+ FcPublic FcBool
382
+ FcDirCacheCreateUUID (FcChar8 *dir,
383
+ FcBool force,
384
+ FcConfig *config);
385
+
386
+ FcPublic FcBool
387
+ FcDirCacheDeleteUUID (const FcChar8 *dir,
388
+ FcConfig *config);
389
+
390
+ /* fccfg.c */
391
+ FcPublic FcChar8 *
392
+ FcConfigHome (void);
393
+
394
+ FcPublic FcBool
395
+ FcConfigEnableHome (FcBool enable);
396
+
397
+ FcPublic FcChar8 *
398
+ FcConfigGetFilename (FcConfig *config,
399
+ const FcChar8 *url);
400
+
401
+ FcPublic FcChar8 *
402
+ FcConfigFilename (const FcChar8 *url);
403
+
404
+ FcPublic FcConfig *
405
+ FcConfigCreate (void);
406
+
407
+ FcPublic FcConfig *
408
+ FcConfigReference (FcConfig *config);
409
+
410
+ FcPublic void
411
+ FcConfigDestroy (FcConfig *config);
412
+
413
+ FcPublic FcBool
414
+ FcConfigSetCurrent (FcConfig *config);
415
+
416
+ FcPublic FcConfig *
417
+ FcConfigGetCurrent (void);
418
+
419
+ FcPublic FcBool
420
+ FcConfigUptoDate (FcConfig *config);
421
+
422
+ FcPublic FcBool
423
+ FcConfigBuildFonts (FcConfig *config);
424
+
425
+ FcPublic FcStrList *
426
+ FcConfigGetFontDirs (FcConfig *config);
427
+
428
+ FcPublic FcStrList *
429
+ FcConfigGetConfigDirs (FcConfig *config);
430
+
431
+ FcPublic FcStrList *
432
+ FcConfigGetConfigFiles (FcConfig *config);
433
+
434
+ FcPublic FcChar8 *
435
+ FcConfigGetCache (FcConfig *config);
436
+
437
+ FcPublic FcBlanks *
438
+ FcConfigGetBlanks (FcConfig *config);
439
+
440
+ FcPublic FcStrList *
441
+ FcConfigGetCacheDirs (FcConfig *config);
442
+
443
+ FcPublic int
444
+ FcConfigGetRescanInterval (FcConfig *config);
445
+
446
+ FcPublic FcBool
447
+ FcConfigSetRescanInterval (FcConfig *config, int rescanInterval);
448
+
449
+ FcPublic FcFontSet *
450
+ FcConfigGetFonts (FcConfig *config,
451
+ FcSetName set);
452
+
453
+ FcPublic FcBool
454
+ FcConfigAppFontAddFile (FcConfig *config,
455
+ const FcChar8 *file);
456
+
457
+ FcPublic FcBool
458
+ FcConfigAppFontAddDir (FcConfig *config,
459
+ const FcChar8 *dir);
460
+
461
+ FcPublic void
462
+ FcConfigAppFontClear (FcConfig *config);
463
+
464
+ FcPublic FcBool
465
+ FcConfigSubstituteWithPat (FcConfig *config,
466
+ FcPattern *p,
467
+ FcPattern *p_pat,
468
+ FcMatchKind kind);
469
+
470
+ FcPublic FcBool
471
+ FcConfigSubstitute (FcConfig *config,
472
+ FcPattern *p,
473
+ FcMatchKind kind);
474
+
475
+ FcPublic const FcChar8 *
476
+ FcConfigGetSysRoot (const FcConfig *config);
477
+
478
+ FcPublic void
479
+ FcConfigSetSysRoot (FcConfig *config,
480
+ const FcChar8 *sysroot);
481
+
482
+ FcPublic void
483
+ FcConfigFileInfoIterInit (FcConfig *config,
484
+ FcConfigFileInfoIter *iter);
485
+
486
+ FcPublic FcBool
487
+ FcConfigFileInfoIterNext (FcConfig *config,
488
+ FcConfigFileInfoIter *iter);
489
+
490
+ FcPublic FcBool
491
+ FcConfigFileInfoIterGet (FcConfig *config,
492
+ FcConfigFileInfoIter *iter,
493
+ FcChar8 **name,
494
+ FcChar8 **description,
495
+ FcBool *enabled);
496
+
497
+ /* fccharset.c */
498
+ FcPublic FcCharSet*
499
+ FcCharSetCreate (void);
500
+
501
+ /* deprecated alias for FcCharSetCreate */
502
+ FcPublic FcCharSet *
503
+ FcCharSetNew (void);
504
+
505
+ FcPublic void
506
+ FcCharSetDestroy (FcCharSet *fcs);
507
+
508
+ FcPublic FcBool
509
+ FcCharSetAddChar (FcCharSet *fcs, FcChar32 ucs4);
510
+
511
+ FcPublic FcBool
512
+ FcCharSetDelChar (FcCharSet *fcs, FcChar32 ucs4);
513
+
514
+ FcPublic FcCharSet*
515
+ FcCharSetCopy (FcCharSet *src);
516
+
517
+ FcPublic FcBool
518
+ FcCharSetEqual (const FcCharSet *a, const FcCharSet *b);
519
+
520
+ FcPublic FcCharSet*
521
+ FcCharSetIntersect (const FcCharSet *a, const FcCharSet *b);
522
+
523
+ FcPublic FcCharSet*
524
+ FcCharSetUnion (const FcCharSet *a, const FcCharSet *b);
525
+
526
+ FcPublic FcCharSet*
527
+ FcCharSetSubtract (const FcCharSet *a, const FcCharSet *b);
528
+
529
+ FcPublic FcBool
530
+ FcCharSetMerge (FcCharSet *a, const FcCharSet *b, FcBool *changed);
531
+
532
+ FcPublic FcBool
533
+ FcCharSetHasChar (const FcCharSet *fcs, FcChar32 ucs4);
534
+
535
+ FcPublic FcChar32
536
+ FcCharSetCount (const FcCharSet *a);
537
+
538
+ FcPublic FcChar32
539
+ FcCharSetIntersectCount (const FcCharSet *a, const FcCharSet *b);
540
+
541
+ FcPublic FcChar32
542
+ FcCharSetSubtractCount (const FcCharSet *a, const FcCharSet *b);
543
+
544
+ FcPublic FcBool
545
+ FcCharSetIsSubset (const FcCharSet *a, const FcCharSet *b);
546
+
547
+ #define FC_CHARSET_MAP_SIZE (256/32)
548
+ #define FC_CHARSET_DONE ((FcChar32) -1)
549
+
550
+ FcPublic FcChar32
551
+ FcCharSetFirstPage (const FcCharSet *a,
552
+ FcChar32 map[FC_CHARSET_MAP_SIZE],
553
+ FcChar32 *next);
554
+
555
+ FcPublic FcChar32
556
+ FcCharSetNextPage (const FcCharSet *a,
557
+ FcChar32 map[FC_CHARSET_MAP_SIZE],
558
+ FcChar32 *next);
559
+
560
+ /*
561
+ * old coverage API, rather hard to use correctly
562
+ */
563
+
564
+ FcPublic FcChar32
565
+ FcCharSetCoverage (const FcCharSet *a, FcChar32 page, FcChar32 *result);
566
+
567
+ /* fcdbg.c */
568
+ FcPublic void
569
+ FcValuePrint (const FcValue v);
570
+
571
+ FcPublic void
572
+ FcPatternPrint (const FcPattern *p);
573
+
574
+ FcPublic void
575
+ FcFontSetPrint (const FcFontSet *s);
576
+
577
+ /* fcdefault.c */
578
+ FcPublic FcStrSet *
579
+ FcGetDefaultLangs (void);
580
+
581
+ FcPublic void
582
+ FcDefaultSubstitute (FcPattern *pattern);
583
+
584
+ /* fcdir.c */
585
+ FcPublic FcBool
586
+ FcFileIsDir (const FcChar8 *file);
587
+
588
+ FcPublic FcBool
589
+ FcFileScan (FcFontSet *set,
590
+ FcStrSet *dirs,
591
+ FcFileCache *cache,
592
+ FcBlanks *blanks,
593
+ const FcChar8 *file,
594
+ FcBool force);
595
+
596
+ FcPublic FcBool
597
+ FcDirScan (FcFontSet *set,
598
+ FcStrSet *dirs,
599
+ FcFileCache *cache,
600
+ FcBlanks *blanks,
601
+ const FcChar8 *dir,
602
+ FcBool force);
603
+
604
+ FcPublic FcBool
605
+ FcDirSave (FcFontSet *set, FcStrSet *dirs, const FcChar8 *dir);
606
+
607
+ FcPublic FcCache *
608
+ FcDirCacheLoad (const FcChar8 *dir, FcConfig *config, FcChar8 **cache_file);
609
+
610
+ FcPublic FcCache *
611
+ FcDirCacheRescan (const FcChar8 *dir, FcConfig *config);
612
+
613
+ FcPublic FcCache *
614
+ FcDirCacheRead (const FcChar8 *dir, FcBool force, FcConfig *config);
615
+
616
+ FcPublic FcCache *
617
+ FcDirCacheLoadFile (const FcChar8 *cache_file, struct stat *file_stat);
618
+
619
+ FcPublic void
620
+ FcDirCacheUnload (FcCache *cache);
621
+
622
+ /* fcfreetype.c */
623
+ FcPublic FcPattern *
624
+ FcFreeTypeQuery (const FcChar8 *file, unsigned int id, FcBlanks *blanks, int *count);
625
+
626
+ FcPublic unsigned int
627
+ FcFreeTypeQueryAll(const FcChar8 *file, unsigned int id, FcBlanks *blanks, int *count, FcFontSet *set);
628
+
629
+ /* fcfs.c */
630
+
631
+ FcPublic FcFontSet *
632
+ FcFontSetCreate (void);
633
+
634
+ FcPublic void
635
+ FcFontSetDestroy (FcFontSet *s);
636
+
637
+ FcPublic FcBool
638
+ FcFontSetAdd (FcFontSet *s, FcPattern *font);
639
+
640
+ /* fcinit.c */
641
+ FcPublic FcConfig *
642
+ FcInitLoadConfig (void);
643
+
644
+ FcPublic FcConfig *
645
+ FcInitLoadConfigAndFonts (void);
646
+
647
+ FcPublic FcBool
648
+ FcInit (void);
649
+
650
+ FcPublic void
651
+ FcFini (void);
652
+
653
+ FcPublic int
654
+ FcGetVersion (void);
655
+
656
+ FcPublic FcBool
657
+ FcInitReinitialize (void);
658
+
659
+ FcPublic FcBool
660
+ FcInitBringUptoDate (void);
661
+
662
+ /* fclang.c */
663
+ FcPublic FcStrSet *
664
+ FcGetLangs (void);
665
+
666
+ FcPublic FcChar8 *
667
+ FcLangNormalize (const FcChar8 *lang);
668
+
669
+ FcPublic const FcCharSet *
670
+ FcLangGetCharSet (const FcChar8 *lang);
671
+
672
+ FcPublic FcLangSet*
673
+ FcLangSetCreate (void);
674
+
675
+ FcPublic void
676
+ FcLangSetDestroy (FcLangSet *ls);
677
+
678
+ FcPublic FcLangSet*
679
+ FcLangSetCopy (const FcLangSet *ls);
680
+
681
+ FcPublic FcBool
682
+ FcLangSetAdd (FcLangSet *ls, const FcChar8 *lang);
683
+
684
+ FcPublic FcBool
685
+ FcLangSetDel (FcLangSet *ls, const FcChar8 *lang);
686
+
687
+ FcPublic FcLangResult
688
+ FcLangSetHasLang (const FcLangSet *ls, const FcChar8 *lang);
689
+
690
+ FcPublic FcLangResult
691
+ FcLangSetCompare (const FcLangSet *lsa, const FcLangSet *lsb);
692
+
693
+ FcPublic FcBool
694
+ FcLangSetContains (const FcLangSet *lsa, const FcLangSet *lsb);
695
+
696
+ FcPublic FcBool
697
+ FcLangSetEqual (const FcLangSet *lsa, const FcLangSet *lsb);
698
+
699
+ FcPublic FcChar32
700
+ FcLangSetHash (const FcLangSet *ls);
701
+
702
+ FcPublic FcStrSet *
703
+ FcLangSetGetLangs (const FcLangSet *ls);
704
+
705
+ FcPublic FcLangSet *
706
+ FcLangSetUnion (const FcLangSet *a, const FcLangSet *b);
707
+
708
+ FcPublic FcLangSet *
709
+ FcLangSetSubtract (const FcLangSet *a, const FcLangSet *b);
710
+
711
+ /* fclist.c */
712
+ FcPublic FcObjectSet *
713
+ FcObjectSetCreate (void);
714
+
715
+ FcPublic FcBool
716
+ FcObjectSetAdd (FcObjectSet *os, const char *object);
717
+
718
+ FcPublic void
719
+ FcObjectSetDestroy (FcObjectSet *os);
720
+
721
+ FcPublic FcObjectSet *
722
+ FcObjectSetVaBuild (const char *first, va_list va);
723
+
724
+ FcPublic FcObjectSet *
725
+ FcObjectSetBuild (const char *first, ...) FC_ATTRIBUTE_SENTINEL(0);
726
+
727
+ FcPublic FcFontSet *
728
+ FcFontSetList (FcConfig *config,
729
+ FcFontSet **sets,
730
+ int nsets,
731
+ FcPattern *p,
732
+ FcObjectSet *os);
733
+
734
+ FcPublic FcFontSet *
735
+ FcFontList (FcConfig *config,
736
+ FcPattern *p,
737
+ FcObjectSet *os);
738
+
739
+ /* fcatomic.c */
740
+
741
+ FcPublic FcAtomic *
742
+ FcAtomicCreate (const FcChar8 *file);
743
+
744
+ FcPublic FcBool
745
+ FcAtomicLock (FcAtomic *atomic);
746
+
747
+ FcPublic FcChar8 *
748
+ FcAtomicNewFile (FcAtomic *atomic);
749
+
750
+ FcPublic FcChar8 *
751
+ FcAtomicOrigFile (FcAtomic *atomic);
752
+
753
+ FcPublic FcBool
754
+ FcAtomicReplaceOrig (FcAtomic *atomic);
755
+
756
+ FcPublic void
757
+ FcAtomicDeleteNew (FcAtomic *atomic);
758
+
759
+ FcPublic void
760
+ FcAtomicUnlock (FcAtomic *atomic);
761
+
762
+ FcPublic void
763
+ FcAtomicDestroy (FcAtomic *atomic);
764
+
765
+ /* fcmatch.c */
766
+ FcPublic FcPattern *
767
+ FcFontSetMatch (FcConfig *config,
768
+ FcFontSet **sets,
769
+ int nsets,
770
+ FcPattern *p,
771
+ FcResult *result);
772
+
773
+ FcPublic FcPattern *
774
+ FcFontMatch (FcConfig *config,
775
+ FcPattern *p,
776
+ FcResult *result);
777
+
778
+ FcPublic FcPattern *
779
+ FcFontRenderPrepare (FcConfig *config,
780
+ FcPattern *pat,
781
+ FcPattern *font);
782
+
783
+ FcPublic FcFontSet *
784
+ FcFontSetSort (FcConfig *config,
785
+ FcFontSet **sets,
786
+ int nsets,
787
+ FcPattern *p,
788
+ FcBool trim,
789
+ FcCharSet **csp,
790
+ FcResult *result);
791
+
792
+ FcPublic FcFontSet *
793
+ FcFontSort (FcConfig *config,
794
+ FcPattern *p,
795
+ FcBool trim,
796
+ FcCharSet **csp,
797
+ FcResult *result);
798
+
799
+ FcPublic void
800
+ FcFontSetSortDestroy (FcFontSet *fs);
801
+
802
+ /* fcmatrix.c */
803
+ FcPublic FcMatrix *
804
+ FcMatrixCopy (const FcMatrix *mat);
805
+
806
+ FcPublic FcBool
807
+ FcMatrixEqual (const FcMatrix *mat1, const FcMatrix *mat2);
808
+
809
+ FcPublic void
810
+ FcMatrixMultiply (FcMatrix *result, const FcMatrix *a, const FcMatrix *b);
811
+
812
+ FcPublic void
813
+ FcMatrixRotate (FcMatrix *m, double c, double s);
814
+
815
+ FcPublic void
816
+ FcMatrixScale (FcMatrix *m, double sx, double sy);
817
+
818
+ FcPublic void
819
+ FcMatrixShear (FcMatrix *m, double sh, double sv);
820
+
821
+ /* fcname.c */
822
+
823
+ /* Deprecated. Does nothing. Returns FcFalse. */
824
+ FcPublic FcBool
825
+ FcNameRegisterObjectTypes (const FcObjectType *types, int ntype);
826
+
827
+ /* Deprecated. Does nothing. Returns FcFalse. */
828
+ FcPublic FcBool
829
+ FcNameUnregisterObjectTypes (const FcObjectType *types, int ntype);
830
+
831
+ FcPublic const FcObjectType *
832
+ FcNameGetObjectType (const char *object);
833
+
834
+ /* Deprecated. Does nothing. Returns FcFalse. */
835
+ FcPublic FcBool
836
+ FcNameRegisterConstants (const FcConstant *consts, int nconsts);
837
+
838
+ /* Deprecated. Does nothing. Returns FcFalse. */
839
+ FcPublic FcBool
840
+ FcNameUnregisterConstants (const FcConstant *consts, int nconsts);
841
+
842
+ FcPublic const FcConstant *
843
+ FcNameGetConstant (const FcChar8 *string);
844
+
845
+ FcPublic FcBool
846
+ FcNameConstant (const FcChar8 *string, int *result);
847
+
848
+ FcPublic FcPattern *
849
+ FcNameParse (const FcChar8 *name);
850
+
851
+ FcPublic FcChar8 *
852
+ FcNameUnparse (FcPattern *pat);
853
+
854
+ /* fcpat.c */
855
+ FcPublic FcPattern *
856
+ FcPatternCreate (void);
857
+
858
+ FcPublic FcPattern *
859
+ FcPatternDuplicate (const FcPattern *p);
860
+
861
+ FcPublic void
862
+ FcPatternReference (FcPattern *p);
863
+
864
+ FcPublic FcPattern *
865
+ FcPatternFilter (FcPattern *p, const FcObjectSet *os);
866
+
867
+ FcPublic void
868
+ FcValueDestroy (FcValue v);
869
+
870
+ FcPublic FcBool
871
+ FcValueEqual (FcValue va, FcValue vb);
872
+
873
+ FcPublic FcValue
874
+ FcValueSave (FcValue v);
875
+
876
+ FcPublic void
877
+ FcPatternDestroy (FcPattern *p);
878
+
879
+ int
880
+ FcPatternObjectCount (const FcPattern *pat);
881
+
882
+ FcPublic FcBool
883
+ FcPatternEqual (const FcPattern *pa, const FcPattern *pb);
884
+
885
+ FcPublic FcBool
886
+ FcPatternEqualSubset (const FcPattern *pa, const FcPattern *pb, const FcObjectSet *os);
887
+
888
+ FcPublic FcChar32
889
+ FcPatternHash (const FcPattern *p);
890
+
891
+ FcPublic FcBool
892
+ FcPatternAdd (FcPattern *p, const char *object, FcValue value, FcBool append);
893
+
894
+ FcPublic FcBool
895
+ FcPatternAddWeak (FcPattern *p, const char *object, FcValue value, FcBool append);
896
+
897
+ FcPublic FcResult
898
+ FcPatternGet (const FcPattern *p, const char *object, int id, FcValue *v);
899
+
900
+ FcPublic FcResult
901
+ FcPatternGetWithBinding (const FcPattern *p, const char *object, int id, FcValue *v, FcValueBinding *b);
902
+
903
+ FcPublic FcBool
904
+ FcPatternDel (FcPattern *p, const char *object);
905
+
906
+ FcPublic FcBool
907
+ FcPatternRemove (FcPattern *p, const char *object, int id);
908
+
909
+ FcPublic FcBool
910
+ FcPatternAddInteger (FcPattern *p, const char *object, int i);
911
+
912
+ FcPublic FcBool
913
+ FcPatternAddDouble (FcPattern *p, const char *object, double d);
914
+
915
+ FcPublic FcBool
916
+ FcPatternAddString (FcPattern *p, const char *object, const FcChar8 *s);
917
+
918
+ FcPublic FcBool
919
+ FcPatternAddMatrix (FcPattern *p, const char *object, const FcMatrix *s);
920
+
921
+ FcPublic FcBool
922
+ FcPatternAddCharSet (FcPattern *p, const char *object, const FcCharSet *c);
923
+
924
+ FcPublic FcBool
925
+ FcPatternAddBool (FcPattern *p, const char *object, FcBool b);
926
+
927
+ FcPublic FcBool
928
+ FcPatternAddLangSet (FcPattern *p, const char *object, const FcLangSet *ls);
929
+
930
+ FcPublic FcBool
931
+ FcPatternAddRange (FcPattern *p, const char *object, const FcRange *r);
932
+
933
+ FcPublic FcResult
934
+ FcPatternGetInteger (const FcPattern *p, const char *object, int n, int *i);
935
+
936
+ FcPublic FcResult
937
+ FcPatternGetDouble (const FcPattern *p, const char *object, int n, double *d);
938
+
939
+ FcPublic FcResult
940
+ FcPatternGetString (const FcPattern *p, const char *object, int n, FcChar8 ** s);
941
+
942
+ FcPublic FcResult
943
+ FcPatternGetMatrix (const FcPattern *p, const char *object, int n, FcMatrix **s);
944
+
945
+ FcPublic FcResult
946
+ FcPatternGetCharSet (const FcPattern *p, const char *object, int n, FcCharSet **c);
947
+
948
+ FcPublic FcResult
949
+ FcPatternGetBool (const FcPattern *p, const char *object, int n, FcBool *b);
950
+
951
+ FcPublic FcResult
952
+ FcPatternGetLangSet (const FcPattern *p, const char *object, int n, FcLangSet **ls);
953
+
954
+ FcPublic FcResult
955
+ FcPatternGetRange (const FcPattern *p, const char *object, int id, FcRange **r);
956
+
957
+ FcPublic FcPattern *
958
+ FcPatternVaBuild (FcPattern *p, va_list va);
959
+
960
+ FcPublic FcPattern *
961
+ FcPatternBuild (FcPattern *p, ...) FC_ATTRIBUTE_SENTINEL(0);
962
+
963
+ FcPublic FcChar8 *
964
+ FcPatternFormat (FcPattern *pat, const FcChar8 *format);
965
+
966
+ /* fcrange.c */
967
+ FcPublic FcRange *
968
+ FcRangeCreateDouble (double begin, double end);
969
+
970
+ FcPublic FcRange *
971
+ FcRangeCreateInteger (FcChar32 begin, FcChar32 end);
972
+
973
+ FcPublic void
974
+ FcRangeDestroy (FcRange *range);
975
+
976
+ FcPublic FcRange *
977
+ FcRangeCopy (const FcRange *r);
978
+
979
+ FcPublic FcBool
980
+ FcRangeGetDouble(const FcRange *range, double *begin, double *end);
981
+
982
+ FcPublic void
983
+ FcPatternIterStart (const FcPattern *pat, FcPatternIter *iter);
984
+
985
+ FcPublic FcBool
986
+ FcPatternIterNext (const FcPattern *pat, FcPatternIter *iter);
987
+
988
+ FcPublic FcBool
989
+ FcPatternIterEqual (const FcPattern *p1, FcPatternIter *i1,
990
+ const FcPattern *p2, FcPatternIter *i2);
991
+
992
+ FcPublic FcBool
993
+ FcPatternFindIter (const FcPattern *pat, FcPatternIter *iter, const char *object);
994
+
995
+ FcPublic FcBool
996
+ FcPatternIterIsValid (const FcPattern *pat, FcPatternIter *iter);
997
+
998
+ FcPublic const char *
999
+ FcPatternIterGetObject (const FcPattern *pat, FcPatternIter *iter);
1000
+
1001
+ FcPublic int
1002
+ FcPatternIterValueCount (const FcPattern *pat, FcPatternIter *iter);
1003
+
1004
+ FcPublic FcResult
1005
+ FcPatternIterGetValue (const FcPattern *pat, FcPatternIter *iter, int id, FcValue *v, FcValueBinding *b);
1006
+
1007
+ /* fcweight.c */
1008
+
1009
+ FcPublic int
1010
+ FcWeightFromOpenType (int ot_weight);
1011
+
1012
+ FcPublic double
1013
+ FcWeightFromOpenTypeDouble (double ot_weight);
1014
+
1015
+ FcPublic int
1016
+ FcWeightToOpenType (int fc_weight);
1017
+
1018
+ FcPublic double
1019
+ FcWeightToOpenTypeDouble (double fc_weight);
1020
+
1021
+ /* fcstr.c */
1022
+
1023
+ FcPublic FcChar8 *
1024
+ FcStrCopy (const FcChar8 *s);
1025
+
1026
+ FcPublic FcChar8 *
1027
+ FcStrCopyFilename (const FcChar8 *s);
1028
+
1029
+ FcPublic FcChar8 *
1030
+ FcStrPlus (const FcChar8 *s1, const FcChar8 *s2);
1031
+
1032
+ FcPublic void
1033
+ FcStrFree (FcChar8 *s);
1034
+
1035
+ /* These are ASCII only, suitable only for pattern element names */
1036
+ #define FcIsUpper(c) ((0101 <= (c) && (c) <= 0132))
1037
+ #define FcIsLower(c) ((0141 <= (c) && (c) <= 0172))
1038
+ #define FcToLower(c) (FcIsUpper(c) ? (c) - 0101 + 0141 : (c))
1039
+
1040
+ FcPublic FcChar8 *
1041
+ FcStrDowncase (const FcChar8 *s);
1042
+
1043
+ FcPublic int
1044
+ FcStrCmpIgnoreCase (const FcChar8 *s1, const FcChar8 *s2);
1045
+
1046
+ FcPublic int
1047
+ FcStrCmp (const FcChar8 *s1, const FcChar8 *s2);
1048
+
1049
+ FcPublic const FcChar8 *
1050
+ FcStrStrIgnoreCase (const FcChar8 *s1, const FcChar8 *s2);
1051
+
1052
+ FcPublic const FcChar8 *
1053
+ FcStrStr (const FcChar8 *s1, const FcChar8 *s2);
1054
+
1055
+ FcPublic int
1056
+ FcUtf8ToUcs4 (const FcChar8 *src_orig,
1057
+ FcChar32 *dst,
1058
+ int len);
1059
+
1060
+ FcPublic FcBool
1061
+ FcUtf8Len (const FcChar8 *string,
1062
+ int len,
1063
+ int *nchar,
1064
+ int *wchar);
1065
+
1066
+ #define FC_UTF8_MAX_LEN 6
1067
+
1068
+ FcPublic int
1069
+ FcUcs4ToUtf8 (FcChar32 ucs4,
1070
+ FcChar8 dest[FC_UTF8_MAX_LEN]);
1071
+
1072
+ FcPublic int
1073
+ FcUtf16ToUcs4 (const FcChar8 *src_orig,
1074
+ FcEndian endian,
1075
+ FcChar32 *dst,
1076
+ int len); /* in bytes */
1077
+
1078
+ FcPublic FcBool
1079
+ FcUtf16Len (const FcChar8 *string,
1080
+ FcEndian endian,
1081
+ int len, /* in bytes */
1082
+ int *nchar,
1083
+ int *wchar);
1084
+
1085
+ FcPublic FcChar8 *
1086
+ FcStrBuildFilename (const FcChar8 *path,
1087
+ ...);
1088
+
1089
+ FcPublic FcChar8 *
1090
+ FcStrDirname (const FcChar8 *file);
1091
+
1092
+ FcPublic FcChar8 *
1093
+ FcStrBasename (const FcChar8 *file);
1094
+
1095
+ FcPublic FcStrSet *
1096
+ FcStrSetCreate (void);
1097
+
1098
+ FcPublic FcBool
1099
+ FcStrSetMember (FcStrSet *set, const FcChar8 *s);
1100
+
1101
+ FcPublic FcBool
1102
+ FcStrSetEqual (FcStrSet *sa, FcStrSet *sb);
1103
+
1104
+ FcPublic FcBool
1105
+ FcStrSetAdd (FcStrSet *set, const FcChar8 *s);
1106
+
1107
+ FcPublic FcBool
1108
+ FcStrSetAddFilename (FcStrSet *set, const FcChar8 *s);
1109
+
1110
+ FcPublic FcBool
1111
+ FcStrSetDel (FcStrSet *set, const FcChar8 *s);
1112
+
1113
+ FcPublic void
1114
+ FcStrSetDestroy (FcStrSet *set);
1115
+
1116
+ FcPublic FcStrList *
1117
+ FcStrListCreate (FcStrSet *set);
1118
+
1119
+ FcPublic void
1120
+ FcStrListFirst (FcStrList *list);
1121
+
1122
+ FcPublic FcChar8 *
1123
+ FcStrListNext (FcStrList *list);
1124
+
1125
+ FcPublic void
1126
+ FcStrListDone (FcStrList *list);
1127
+
1128
+ /* fcxml.c */
1129
+ FcPublic FcBool
1130
+ FcConfigParseAndLoad (FcConfig *config, const FcChar8 *file, FcBool complain);
1131
+
1132
+ FcPublic FcBool
1133
+ FcConfigParseAndLoadFromMemory (FcConfig *config,
1134
+ const FcChar8 *buffer,
1135
+ FcBool complain);
1136
+
1137
+ _FCFUNCPROTOEND
1138
+
1139
+ #undef FC_ATTRIBUTE_SENTINEL
1140
+
1141
+
1142
+ #ifndef _FCINT_H_
1143
+
1144
+ /*
1145
+ * Deprecated functions are placed here to help users fix their code without
1146
+ * digging through documentation
1147
+ */
1148
+
1149
+ #define FcConfigGetRescanInverval FcConfigGetRescanInverval_REPLACE_BY_FcConfigGetRescanInterval
1150
+ #define FcConfigSetRescanInverval FcConfigSetRescanInverval_REPLACE_BY_FcConfigSetRescanInterval
1151
+
1152
+ #endif
1153
+
1154
+ #endif /* _FONTCONFIG_H_ */