jassub 1.7.13 → 1.7.14

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 (171) hide show
  1. package/package.json +4 -2
  2. package/dist/js/jassub-worker-modern.js +0 -128
  3. package/dist/js/jassub-worker-modern.wasm +0 -0
  4. package/dist/js/jassub-worker.js +0 -128
  5. package/dist/js/jassub-worker.wasm +0 -0
  6. package/dist/js/jassub-worker.wasm.js +0 -84
  7. package/dist/js/jassub.js +0 -832
  8. package/dist/libraries/bin/brotli.js +0 -1
  9. package/dist/libraries/include/ass/ass.h +0 -812
  10. package/dist/libraries/include/ass/ass_types.h +0 -292
  11. package/dist/libraries/include/brotli/decode.h +0 -344
  12. package/dist/libraries/include/brotli/encode.h +0 -448
  13. package/dist/libraries/include/brotli/port.h +0 -288
  14. package/dist/libraries/include/brotli/types.h +0 -83
  15. package/dist/libraries/include/expat.h +0 -1064
  16. package/dist/libraries/include/expat_config.h +0 -115
  17. package/dist/libraries/include/expat_external.h +0 -165
  18. package/dist/libraries/include/fontconfig/fcfreetype.h +0 -59
  19. package/dist/libraries/include/fontconfig/fcprivate.h +0 -134
  20. package/dist/libraries/include/fontconfig/fontconfig.h +0 -1154
  21. package/dist/libraries/include/freetype2/freetype/config/ftconfig.h +0 -63
  22. package/dist/libraries/include/freetype2/freetype/config/ftheader.h +0 -824
  23. package/dist/libraries/include/freetype2/freetype/config/ftmodule.h +0 -20
  24. package/dist/libraries/include/freetype2/freetype/config/ftoption.h +0 -1011
  25. package/dist/libraries/include/freetype2/freetype/config/ftstdlib.h +0 -175
  26. package/dist/libraries/include/freetype2/freetype/config/integer-types.h +0 -245
  27. package/dist/libraries/include/freetype2/freetype/config/mac-support.h +0 -49
  28. package/dist/libraries/include/freetype2/freetype/config/public-macros.h +0 -120
  29. package/dist/libraries/include/freetype2/freetype/freetype.h +0 -4833
  30. package/dist/libraries/include/freetype2/freetype/ftadvanc.h +0 -188
  31. package/dist/libraries/include/freetype2/freetype/ftbbox.h +0 -101
  32. package/dist/libraries/include/freetype2/freetype/ftbdf.h +0 -212
  33. package/dist/libraries/include/freetype2/freetype/ftbitmap.h +0 -329
  34. package/dist/libraries/include/freetype2/freetype/ftbzip2.h +0 -102
  35. package/dist/libraries/include/freetype2/freetype/ftcache.h +0 -1087
  36. package/dist/libraries/include/freetype2/freetype/ftchapters.h +0 -147
  37. package/dist/libraries/include/freetype2/freetype/ftcid.h +0 -167
  38. package/dist/libraries/include/freetype2/freetype/ftcolor.h +0 -1609
  39. package/dist/libraries/include/freetype2/freetype/ftdriver.h +0 -1193
  40. package/dist/libraries/include/freetype2/freetype/fterrdef.h +0 -279
  41. package/dist/libraries/include/freetype2/freetype/fterrors.h +0 -296
  42. package/dist/libraries/include/freetype2/freetype/ftfntfmt.h +0 -93
  43. package/dist/libraries/include/freetype2/freetype/ftgasp.h +0 -143
  44. package/dist/libraries/include/freetype2/freetype/ftglyph.h +0 -664
  45. package/dist/libraries/include/freetype2/freetype/ftgxval.h +0 -354
  46. package/dist/libraries/include/freetype2/freetype/ftgzip.h +0 -151
  47. package/dist/libraries/include/freetype2/freetype/ftimage.h +0 -1276
  48. package/dist/libraries/include/freetype2/freetype/ftincrem.h +0 -348
  49. package/dist/libraries/include/freetype2/freetype/ftlcdfil.h +0 -323
  50. package/dist/libraries/include/freetype2/freetype/ftlist.h +0 -296
  51. package/dist/libraries/include/freetype2/freetype/ftlogging.h +0 -184
  52. package/dist/libraries/include/freetype2/freetype/ftlzw.h +0 -100
  53. package/dist/libraries/include/freetype2/freetype/ftmac.h +0 -289
  54. package/dist/libraries/include/freetype2/freetype/ftmm.h +0 -752
  55. package/dist/libraries/include/freetype2/freetype/ftmodapi.h +0 -806
  56. package/dist/libraries/include/freetype2/freetype/ftmoderr.h +0 -204
  57. package/dist/libraries/include/freetype2/freetype/ftotval.h +0 -206
  58. package/dist/libraries/include/freetype2/freetype/ftoutln.h +0 -586
  59. package/dist/libraries/include/freetype2/freetype/ftparams.h +0 -203
  60. package/dist/libraries/include/freetype2/freetype/ftpfr.h +0 -179
  61. package/dist/libraries/include/freetype2/freetype/ftrender.h +0 -244
  62. package/dist/libraries/include/freetype2/freetype/ftsizes.h +0 -159
  63. package/dist/libraries/include/freetype2/freetype/ftsnames.h +0 -272
  64. package/dist/libraries/include/freetype2/freetype/ftstroke.h +0 -773
  65. package/dist/libraries/include/freetype2/freetype/ftsynth.h +0 -83
  66. package/dist/libraries/include/freetype2/freetype/ftsystem.h +0 -352
  67. package/dist/libraries/include/freetype2/freetype/fttrigon.h +0 -350
  68. package/dist/libraries/include/freetype2/freetype/fttypes.h +0 -615
  69. package/dist/libraries/include/freetype2/freetype/ftwinfnt.h +0 -276
  70. package/dist/libraries/include/freetype2/freetype/t1tables.h +0 -773
  71. package/dist/libraries/include/freetype2/freetype/ttnameid.h +0 -1235
  72. package/dist/libraries/include/freetype2/freetype/tttables.h +0 -855
  73. package/dist/libraries/include/freetype2/freetype/tttags.h +0 -123
  74. package/dist/libraries/include/freetype2/ft2build.h +0 -42
  75. package/dist/libraries/include/fribidi/fribidi-arabic.h +0 -81
  76. package/dist/libraries/include/fribidi/fribidi-begindecls.h +0 -3
  77. package/dist/libraries/include/fribidi/fribidi-bidi-types-list.h +0 -96
  78. package/dist/libraries/include/fribidi/fribidi-bidi-types.h +0 -405
  79. package/dist/libraries/include/fribidi/fribidi-bidi.h +0 -142
  80. package/dist/libraries/include/fribidi/fribidi-brackets.h +0 -89
  81. package/dist/libraries/include/fribidi/fribidi-char-sets-list.h +0 -54
  82. package/dist/libraries/include/fribidi/fribidi-char-sets.h +0 -106
  83. package/dist/libraries/include/fribidi/fribidi-common.h +0 -158
  84. package/dist/libraries/include/fribidi/fribidi-config.h +0 -23
  85. package/dist/libraries/include/fribidi/fribidi-deprecated.h +0 -175
  86. package/dist/libraries/include/fribidi/fribidi-enddecls.h +0 -3
  87. package/dist/libraries/include/fribidi/fribidi-flags.h +0 -72
  88. package/dist/libraries/include/fribidi/fribidi-joining-types-list.h +0 -44
  89. package/dist/libraries/include/fribidi/fribidi-joining-types.h +0 -249
  90. package/dist/libraries/include/fribidi/fribidi-joining.h +0 -74
  91. package/dist/libraries/include/fribidi/fribidi-mirroring.h +0 -86
  92. package/dist/libraries/include/fribidi/fribidi-shape.h +0 -71
  93. package/dist/libraries/include/fribidi/fribidi-types.h +0 -79
  94. package/dist/libraries/include/fribidi/fribidi-unicode-version.h +0 -10
  95. package/dist/libraries/include/fribidi/fribidi-unicode.h +0 -105
  96. package/dist/libraries/include/fribidi/fribidi.h +0 -129
  97. package/dist/libraries/include/harfbuzz/hb-aat-layout.h +0 -795
  98. package/dist/libraries/include/harfbuzz/hb-aat.h +0 -38
  99. package/dist/libraries/include/harfbuzz/hb-blob.h +0 -160
  100. package/dist/libraries/include/harfbuzz/hb-buffer.h +0 -799
  101. package/dist/libraries/include/harfbuzz/hb-common.h +0 -902
  102. package/dist/libraries/include/harfbuzz/hb-cplusplus.hh +0 -221
  103. package/dist/libraries/include/harfbuzz/hb-deprecated.h +0 -251
  104. package/dist/libraries/include/harfbuzz/hb-draw.h +0 -325
  105. package/dist/libraries/include/harfbuzz/hb-face.h +0 -181
  106. package/dist/libraries/include/harfbuzz/hb-font.h +0 -1108
  107. package/dist/libraries/include/harfbuzz/hb-ft.h +0 -145
  108. package/dist/libraries/include/harfbuzz/hb-map.h +0 -124
  109. package/dist/libraries/include/harfbuzz/hb-ot-color.h +0 -146
  110. package/dist/libraries/include/harfbuzz/hb-ot-deprecated.h +0 -141
  111. package/dist/libraries/include/harfbuzz/hb-ot-font.h +0 -45
  112. package/dist/libraries/include/harfbuzz/hb-ot-layout.h +0 -503
  113. package/dist/libraries/include/harfbuzz/hb-ot-math.h +0 -333
  114. package/dist/libraries/include/harfbuzz/hb-ot-meta.h +0 -72
  115. package/dist/libraries/include/harfbuzz/hb-ot-metrics.h +0 -129
  116. package/dist/libraries/include/harfbuzz/hb-ot-name.h +0 -158
  117. package/dist/libraries/include/harfbuzz/hb-ot-shape.h +0 -53
  118. package/dist/libraries/include/harfbuzz/hb-ot-var.h +0 -191
  119. package/dist/libraries/include/harfbuzz/hb-ot.h +0 -49
  120. package/dist/libraries/include/harfbuzz/hb-set.h +0 -200
  121. package/dist/libraries/include/harfbuzz/hb-shape-plan.h +0 -122
  122. package/dist/libraries/include/harfbuzz/hb-shape.h +0 -62
  123. package/dist/libraries/include/harfbuzz/hb-style.h +0 -81
  124. package/dist/libraries/include/harfbuzz/hb-subset-repacker.h +0 -81
  125. package/dist/libraries/include/harfbuzz/hb-subset.h +0 -234
  126. package/dist/libraries/include/harfbuzz/hb-unicode.h +0 -643
  127. package/dist/libraries/include/harfbuzz/hb-version.h +0 -95
  128. package/dist/libraries/include/harfbuzz/hb.h +0 -50
  129. package/dist/libraries/lib/cmake/expat-2.4.7/expat-config-version.cmake +0 -70
  130. package/dist/libraries/lib/cmake/expat-2.4.7/expat-config.cmake +0 -99
  131. package/dist/libraries/lib/cmake/expat-2.4.7/expat-noconfig.cmake +0 -19
  132. package/dist/libraries/lib/cmake/expat-2.4.7/expat.cmake +0 -99
  133. package/dist/libraries/lib/libass.a +0 -0
  134. package/dist/libraries/lib/libass.la +0 -41
  135. package/dist/libraries/lib/libbrotlicommon.a +0 -0
  136. package/dist/libraries/lib/libbrotlidec.a +0 -0
  137. package/dist/libraries/lib/libbrotlienc.a +0 -0
  138. package/dist/libraries/lib/libexpat.a +0 -0
  139. package/dist/libraries/lib/libfontconfig.a +0 -0
  140. package/dist/libraries/lib/libfontconfig.la +0 -41
  141. package/dist/libraries/lib/libfreetype.a +0 -0
  142. package/dist/libraries/lib/libfreetype.la +0 -41
  143. package/dist/libraries/lib/libfribidi.a +0 -0
  144. package/dist/libraries/lib/libfribidi.la +0 -41
  145. package/dist/libraries/lib/libharfbuzz-subset.a +0 -0
  146. package/dist/libraries/lib/libharfbuzz-subset.la +0 -41
  147. package/dist/libraries/lib/libharfbuzz.a +0 -0
  148. package/dist/libraries/lib/libharfbuzz.la +0 -41
  149. package/dist/libraries/lib/pkgconfig/expat.pc +0 -11
  150. package/dist/libraries/lib/pkgconfig/fontconfig.pc +0 -18
  151. package/dist/libraries/lib/pkgconfig/freetype2.pc +0 -14
  152. package/dist/libraries/lib/pkgconfig/fribidi.pc +0 -13
  153. package/dist/libraries/lib/pkgconfig/harfbuzz-subset.pc +0 -12
  154. package/dist/libraries/lib/pkgconfig/harfbuzz.pc +0 -13
  155. package/dist/libraries/lib/pkgconfig/libass.pc +0 -13
  156. package/dist/libraries/lib/pkgconfig/libbrotlicommon.pc +0 -11
  157. package/dist/libraries/lib/pkgconfig/libbrotlidec.pc +0 -12
  158. package/dist/libraries/lib/pkgconfig/libbrotlienc.pc +0 -12
  159. package/dist/libraries/share/aclocal/freetype2.m4 +0 -194
  160. package/dist/libraries/share/doc/expat/AUTHORS +0 -10
  161. package/dist/libraries/share/doc/expat/changelog +0 -1161
  162. package/dist/license/all +0 -951
  163. package/dist/license/all.tmp +0 -307
  164. package/dist/license/brotli +0 -12
  165. package/dist/license/expat +0 -71
  166. package/dist/license/fontconfig +0 -46
  167. package/dist/license/freetype +0 -92
  168. package/dist/license/fribidi +0 -15
  169. package/dist/license/harfbuzz +0 -32
  170. package/dist/license/jassub +0 -0
  171. package/dist/license/libass +0 -28
@@ -1,586 +0,0 @@
1
- /****************************************************************************
2
- *
3
- * ftoutln.h
4
- *
5
- * Support for the FT_Outline type used to store glyph shapes of
6
- * most scalable font formats (specification).
7
- *
8
- * Copyright (C) 1996-2021 by
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
-
20
- #ifndef FTOUTLN_H_
21
- #define FTOUTLN_H_
22
-
23
-
24
- #include <freetype/freetype.h>
25
-
26
- #ifdef FREETYPE_H
27
- #error "freetype.h of FreeType 1 has been loaded!"
28
- #error "Please fix the directory search order for header files"
29
- #error "so that freetype.h of FreeType 2 is found first."
30
- #endif
31
-
32
-
33
- FT_BEGIN_HEADER
34
-
35
-
36
- /**************************************************************************
37
- *
38
- * @section:
39
- * outline_processing
40
- *
41
- * @title:
42
- * Outline Processing
43
- *
44
- * @abstract:
45
- * Functions to create, transform, and render vectorial glyph images.
46
- *
47
- * @description:
48
- * This section contains routines used to create and destroy scalable
49
- * glyph images known as 'outlines'. These can also be measured,
50
- * transformed, and converted into bitmaps and pixmaps.
51
- *
52
- * @order:
53
- * FT_Outline
54
- * FT_Outline_New
55
- * FT_Outline_Done
56
- * FT_Outline_Copy
57
- * FT_Outline_Translate
58
- * FT_Outline_Transform
59
- * FT_Outline_Embolden
60
- * FT_Outline_EmboldenXY
61
- * FT_Outline_Reverse
62
- * FT_Outline_Check
63
- *
64
- * FT_Outline_Get_CBox
65
- * FT_Outline_Get_BBox
66
- *
67
- * FT_Outline_Get_Bitmap
68
- * FT_Outline_Render
69
- * FT_Outline_Decompose
70
- * FT_Outline_Funcs
71
- * FT_Outline_MoveToFunc
72
- * FT_Outline_LineToFunc
73
- * FT_Outline_ConicToFunc
74
- * FT_Outline_CubicToFunc
75
- *
76
- * FT_Orientation
77
- * FT_Outline_Get_Orientation
78
- *
79
- * FT_OUTLINE_XXX
80
- *
81
- */
82
-
83
-
84
- /**************************************************************************
85
- *
86
- * @function:
87
- * FT_Outline_Decompose
88
- *
89
- * @description:
90
- * Walk over an outline's structure to decompose it into individual
91
- * segments and Bezier arcs. This function also emits 'move to'
92
- * operations to indicate the start of new contours in the outline.
93
- *
94
- * @input:
95
- * outline ::
96
- * A pointer to the source target.
97
- *
98
- * func_interface ::
99
- * A table of 'emitters', i.e., function pointers called during
100
- * decomposition to indicate path operations.
101
- *
102
- * @inout:
103
- * user ::
104
- * A typeless pointer that is passed to each emitter during the
105
- * decomposition. It can be used to store the state during the
106
- * decomposition.
107
- *
108
- * @return:
109
- * FreeType error code. 0~means success.
110
- *
111
- * @note:
112
- * A contour that contains a single point only is represented by a 'move
113
- * to' operation followed by 'line to' to the same point. In most cases,
114
- * it is best to filter this out before using the outline for stroking
115
- * purposes (otherwise it would result in a visible dot when round caps
116
- * are used).
117
- *
118
- * Similarly, the function returns success for an empty outline also
119
- * (doing nothing, this is, not calling any emitter); if necessary, you
120
- * should filter this out, too.
121
- */
122
- FT_EXPORT( FT_Error )
123
- FT_Outline_Decompose( FT_Outline* outline,
124
- const FT_Outline_Funcs* func_interface,
125
- void* user );
126
-
127
-
128
- /**************************************************************************
129
- *
130
- * @function:
131
- * FT_Outline_New
132
- *
133
- * @description:
134
- * Create a new outline of a given size.
135
- *
136
- * @input:
137
- * library ::
138
- * A handle to the library object from where the outline is allocated.
139
- * Note however that the new outline will **not** necessarily be
140
- * **freed**, when destroying the library, by @FT_Done_FreeType.
141
- *
142
- * numPoints ::
143
- * The maximum number of points within the outline. Must be smaller
144
- * than or equal to 0xFFFF (65535).
145
- *
146
- * numContours ::
147
- * The maximum number of contours within the outline. This value must
148
- * be in the range 0 to `numPoints`.
149
- *
150
- * @output:
151
- * anoutline ::
152
- * A handle to the new outline.
153
- *
154
- * @return:
155
- * FreeType error code. 0~means success.
156
- *
157
- * @note:
158
- * The reason why this function takes a `library` parameter is simply to
159
- * use the library's memory allocator.
160
- */
161
- FT_EXPORT( FT_Error )
162
- FT_Outline_New( FT_Library library,
163
- FT_UInt numPoints,
164
- FT_Int numContours,
165
- FT_Outline *anoutline );
166
-
167
-
168
- /**************************************************************************
169
- *
170
- * @function:
171
- * FT_Outline_Done
172
- *
173
- * @description:
174
- * Destroy an outline created with @FT_Outline_New.
175
- *
176
- * @input:
177
- * library ::
178
- * A handle of the library object used to allocate the outline.
179
- *
180
- * outline ::
181
- * A pointer to the outline object to be discarded.
182
- *
183
- * @return:
184
- * FreeType error code. 0~means success.
185
- *
186
- * @note:
187
- * If the outline's 'owner' field is not set, only the outline descriptor
188
- * will be released.
189
- */
190
- FT_EXPORT( FT_Error )
191
- FT_Outline_Done( FT_Library library,
192
- FT_Outline* outline );
193
-
194
-
195
- /**************************************************************************
196
- *
197
- * @function:
198
- * FT_Outline_Check
199
- *
200
- * @description:
201
- * Check the contents of an outline descriptor.
202
- *
203
- * @input:
204
- * outline ::
205
- * A handle to a source outline.
206
- *
207
- * @return:
208
- * FreeType error code. 0~means success.
209
- *
210
- * @note:
211
- * An empty outline, or an outline with a single point only is also
212
- * valid.
213
- */
214
- FT_EXPORT( FT_Error )
215
- FT_Outline_Check( FT_Outline* outline );
216
-
217
-
218
- /**************************************************************************
219
- *
220
- * @function:
221
- * FT_Outline_Get_CBox
222
- *
223
- * @description:
224
- * Return an outline's 'control box'. The control box encloses all the
225
- * outline's points, including Bezier control points. Though it
226
- * coincides with the exact bounding box for most glyphs, it can be
227
- * slightly larger in some situations (like when rotating an outline that
228
- * contains Bezier outside arcs).
229
- *
230
- * Computing the control box is very fast, while getting the bounding box
231
- * can take much more time as it needs to walk over all segments and arcs
232
- * in the outline. To get the latter, you can use the 'ftbbox'
233
- * component, which is dedicated to this single task.
234
- *
235
- * @input:
236
- * outline ::
237
- * A pointer to the source outline descriptor.
238
- *
239
- * @output:
240
- * acbox ::
241
- * The outline's control box.
242
- *
243
- * @note:
244
- * See @FT_Glyph_Get_CBox for a discussion of tricky fonts.
245
- */
246
- FT_EXPORT( void )
247
- FT_Outline_Get_CBox( const FT_Outline* outline,
248
- FT_BBox *acbox );
249
-
250
-
251
- /**************************************************************************
252
- *
253
- * @function:
254
- * FT_Outline_Translate
255
- *
256
- * @description:
257
- * Apply a simple translation to the points of an outline.
258
- *
259
- * @inout:
260
- * outline ::
261
- * A pointer to the target outline descriptor.
262
- *
263
- * @input:
264
- * xOffset ::
265
- * The horizontal offset.
266
- *
267
- * yOffset ::
268
- * The vertical offset.
269
- */
270
- FT_EXPORT( void )
271
- FT_Outline_Translate( const FT_Outline* outline,
272
- FT_Pos xOffset,
273
- FT_Pos yOffset );
274
-
275
-
276
- /**************************************************************************
277
- *
278
- * @function:
279
- * FT_Outline_Copy
280
- *
281
- * @description:
282
- * Copy an outline into another one. Both objects must have the same
283
- * sizes (number of points & number of contours) when this function is
284
- * called.
285
- *
286
- * @input:
287
- * source ::
288
- * A handle to the source outline.
289
- *
290
- * @output:
291
- * target ::
292
- * A handle to the target outline.
293
- *
294
- * @return:
295
- * FreeType error code. 0~means success.
296
- */
297
- FT_EXPORT( FT_Error )
298
- FT_Outline_Copy( const FT_Outline* source,
299
- FT_Outline *target );
300
-
301
-
302
- /**************************************************************************
303
- *
304
- * @function:
305
- * FT_Outline_Transform
306
- *
307
- * @description:
308
- * Apply a simple 2x2 matrix to all of an outline's points. Useful for
309
- * applying rotations, slanting, flipping, etc.
310
- *
311
- * @inout:
312
- * outline ::
313
- * A pointer to the target outline descriptor.
314
- *
315
- * @input:
316
- * matrix ::
317
- * A pointer to the transformation matrix.
318
- *
319
- * @note:
320
- * You can use @FT_Outline_Translate if you need to translate the
321
- * outline's points.
322
- */
323
- FT_EXPORT( void )
324
- FT_Outline_Transform( const FT_Outline* outline,
325
- const FT_Matrix* matrix );
326
-
327
-
328
- /**************************************************************************
329
- *
330
- * @function:
331
- * FT_Outline_Embolden
332
- *
333
- * @description:
334
- * Embolden an outline. The new outline will be at most 4~times
335
- * `strength` pixels wider and higher. You may think of the left and
336
- * bottom borders as unchanged.
337
- *
338
- * Negative `strength` values to reduce the outline thickness are
339
- * possible also.
340
- *
341
- * @inout:
342
- * outline ::
343
- * A handle to the target outline.
344
- *
345
- * @input:
346
- * strength ::
347
- * How strong the glyph is emboldened. Expressed in 26.6 pixel format.
348
- *
349
- * @return:
350
- * FreeType error code. 0~means success.
351
- *
352
- * @note:
353
- * The used algorithm to increase or decrease the thickness of the glyph
354
- * doesn't change the number of points; this means that certain
355
- * situations like acute angles or intersections are sometimes handled
356
- * incorrectly.
357
- *
358
- * If you need 'better' metrics values you should call
359
- * @FT_Outline_Get_CBox or @FT_Outline_Get_BBox.
360
- *
361
- * To get meaningful results, font scaling values must be set with
362
- * functions like @FT_Set_Char_Size before calling FT_Render_Glyph.
363
- *
364
- * @example:
365
- * ```
366
- * FT_Load_Glyph( face, index, FT_LOAD_DEFAULT );
367
- *
368
- * if ( face->glyph->format == FT_GLYPH_FORMAT_OUTLINE )
369
- * FT_Outline_Embolden( &face->glyph->outline, strength );
370
- * ```
371
- *
372
- */
373
- FT_EXPORT( FT_Error )
374
- FT_Outline_Embolden( FT_Outline* outline,
375
- FT_Pos strength );
376
-
377
-
378
- /**************************************************************************
379
- *
380
- * @function:
381
- * FT_Outline_EmboldenXY
382
- *
383
- * @description:
384
- * Embolden an outline. The new outline will be `xstrength` pixels wider
385
- * and `ystrength` pixels higher. Otherwise, it is similar to
386
- * @FT_Outline_Embolden, which uses the same strength in both directions.
387
- *
388
- * @since:
389
- * 2.4.10
390
- */
391
- FT_EXPORT( FT_Error )
392
- FT_Outline_EmboldenXY( FT_Outline* outline,
393
- FT_Pos xstrength,
394
- FT_Pos ystrength );
395
-
396
-
397
- /**************************************************************************
398
- *
399
- * @function:
400
- * FT_Outline_Reverse
401
- *
402
- * @description:
403
- * Reverse the drawing direction of an outline. This is used to ensure
404
- * consistent fill conventions for mirrored glyphs.
405
- *
406
- * @inout:
407
- * outline ::
408
- * A pointer to the target outline descriptor.
409
- *
410
- * @note:
411
- * This function toggles the bit flag @FT_OUTLINE_REVERSE_FILL in the
412
- * outline's `flags` field.
413
- *
414
- * It shouldn't be used by a normal client application, unless it knows
415
- * what it is doing.
416
- */
417
- FT_EXPORT( void )
418
- FT_Outline_Reverse( FT_Outline* outline );
419
-
420
-
421
- /**************************************************************************
422
- *
423
- * @function:
424
- * FT_Outline_Get_Bitmap
425
- *
426
- * @description:
427
- * Render an outline within a bitmap. The outline's image is simply
428
- * OR-ed to the target bitmap.
429
- *
430
- * @input:
431
- * library ::
432
- * A handle to a FreeType library object.
433
- *
434
- * outline ::
435
- * A pointer to the source outline descriptor.
436
- *
437
- * @inout:
438
- * abitmap ::
439
- * A pointer to the target bitmap descriptor.
440
- *
441
- * @return:
442
- * FreeType error code. 0~means success.
443
- *
444
- * @note:
445
- * This function does **not create** the bitmap, it only renders an
446
- * outline image within the one you pass to it! Consequently, the
447
- * various fields in `abitmap` should be set accordingly.
448
- *
449
- * It will use the raster corresponding to the default glyph format.
450
- *
451
- * The value of the `num_grays` field in `abitmap` is ignored. If you
452
- * select the gray-level rasterizer, and you want less than 256 gray
453
- * levels, you have to use @FT_Outline_Render directly.
454
- */
455
- FT_EXPORT( FT_Error )
456
- FT_Outline_Get_Bitmap( FT_Library library,
457
- FT_Outline* outline,
458
- const FT_Bitmap *abitmap );
459
-
460
-
461
- /**************************************************************************
462
- *
463
- * @function:
464
- * FT_Outline_Render
465
- *
466
- * @description:
467
- * Render an outline within a bitmap using the current scan-convert.
468
- *
469
- * @input:
470
- * library ::
471
- * A handle to a FreeType library object.
472
- *
473
- * outline ::
474
- * A pointer to the source outline descriptor.
475
- *
476
- * @inout:
477
- * params ::
478
- * A pointer to an @FT_Raster_Params structure used to describe the
479
- * rendering operation.
480
- *
481
- * @return:
482
- * FreeType error code. 0~means success.
483
- *
484
- * @note:
485
- * This advanced function uses @FT_Raster_Params as an argument.
486
- * The field `params.source` will be set to `outline` before the scan
487
- * converter is called, which means that the value you give to it is
488
- * actually ignored. Either `params.target` must point to preallocated
489
- * bitmap, or @FT_RASTER_FLAG_DIRECT must be set in `params.flags`
490
- * allowing FreeType rasterizer to be used for direct composition,
491
- * translucency, etc. See @FT_Raster_Params for more details.
492
- */
493
- FT_EXPORT( FT_Error )
494
- FT_Outline_Render( FT_Library library,
495
- FT_Outline* outline,
496
- FT_Raster_Params* params );
497
-
498
-
499
- /**************************************************************************
500
- *
501
- * @enum:
502
- * FT_Orientation
503
- *
504
- * @description:
505
- * A list of values used to describe an outline's contour orientation.
506
- *
507
- * The TrueType and PostScript specifications use different conventions
508
- * to determine whether outline contours should be filled or unfilled.
509
- *
510
- * @values:
511
- * FT_ORIENTATION_TRUETYPE ::
512
- * According to the TrueType specification, clockwise contours must be
513
- * filled, and counter-clockwise ones must be unfilled.
514
- *
515
- * FT_ORIENTATION_POSTSCRIPT ::
516
- * According to the PostScript specification, counter-clockwise
517
- * contours must be filled, and clockwise ones must be unfilled.
518
- *
519
- * FT_ORIENTATION_FILL_RIGHT ::
520
- * This is identical to @FT_ORIENTATION_TRUETYPE, but is used to
521
- * remember that in TrueType, everything that is to the right of the
522
- * drawing direction of a contour must be filled.
523
- *
524
- * FT_ORIENTATION_FILL_LEFT ::
525
- * This is identical to @FT_ORIENTATION_POSTSCRIPT, but is used to
526
- * remember that in PostScript, everything that is to the left of the
527
- * drawing direction of a contour must be filled.
528
- *
529
- * FT_ORIENTATION_NONE ::
530
- * The orientation cannot be determined. That is, different parts of
531
- * the glyph have different orientation.
532
- *
533
- */
534
- typedef enum FT_Orientation_
535
- {
536
- FT_ORIENTATION_TRUETYPE = 0,
537
- FT_ORIENTATION_POSTSCRIPT = 1,
538
- FT_ORIENTATION_FILL_RIGHT = FT_ORIENTATION_TRUETYPE,
539
- FT_ORIENTATION_FILL_LEFT = FT_ORIENTATION_POSTSCRIPT,
540
- FT_ORIENTATION_NONE
541
-
542
- } FT_Orientation;
543
-
544
-
545
- /**************************************************************************
546
- *
547
- * @function:
548
- * FT_Outline_Get_Orientation
549
- *
550
- * @description:
551
- * This function analyzes a glyph outline and tries to compute its fill
552
- * orientation (see @FT_Orientation). This is done by integrating the
553
- * total area covered by the outline. The positive integral corresponds
554
- * to the clockwise orientation and @FT_ORIENTATION_POSTSCRIPT is
555
- * returned. The negative integral corresponds to the counter-clockwise
556
- * orientation and @FT_ORIENTATION_TRUETYPE is returned.
557
- *
558
- * Note that this will return @FT_ORIENTATION_TRUETYPE for empty
559
- * outlines.
560
- *
561
- * @input:
562
- * outline ::
563
- * A handle to the source outline.
564
- *
565
- * @return:
566
- * The orientation.
567
- *
568
- */
569
- FT_EXPORT( FT_Orientation )
570
- FT_Outline_Get_Orientation( FT_Outline* outline );
571
-
572
-
573
- /* */
574
-
575
-
576
- FT_END_HEADER
577
-
578
- #endif /* FTOUTLN_H_ */
579
-
580
-
581
- /* END */
582
-
583
-
584
- /* Local Variables: */
585
- /* coding: utf-8 */
586
- /* End: */