jassub 1.7.13 → 1.7.15

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 (172) hide show
  1. package/dist/jassub-worker.js +6 -6
  2. package/package.json +4 -2
  3. package/dist/js/jassub-worker-modern.js +0 -128
  4. package/dist/js/jassub-worker-modern.wasm +0 -0
  5. package/dist/js/jassub-worker.js +0 -128
  6. package/dist/js/jassub-worker.wasm +0 -0
  7. package/dist/js/jassub-worker.wasm.js +0 -84
  8. package/dist/js/jassub.js +0 -832
  9. package/dist/libraries/bin/brotli.js +0 -1
  10. package/dist/libraries/include/ass/ass.h +0 -812
  11. package/dist/libraries/include/ass/ass_types.h +0 -292
  12. package/dist/libraries/include/brotli/decode.h +0 -344
  13. package/dist/libraries/include/brotli/encode.h +0 -448
  14. package/dist/libraries/include/brotli/port.h +0 -288
  15. package/dist/libraries/include/brotli/types.h +0 -83
  16. package/dist/libraries/include/expat.h +0 -1064
  17. package/dist/libraries/include/expat_config.h +0 -115
  18. package/dist/libraries/include/expat_external.h +0 -165
  19. package/dist/libraries/include/fontconfig/fcfreetype.h +0 -59
  20. package/dist/libraries/include/fontconfig/fcprivate.h +0 -134
  21. package/dist/libraries/include/fontconfig/fontconfig.h +0 -1154
  22. package/dist/libraries/include/freetype2/freetype/config/ftconfig.h +0 -63
  23. package/dist/libraries/include/freetype2/freetype/config/ftheader.h +0 -824
  24. package/dist/libraries/include/freetype2/freetype/config/ftmodule.h +0 -20
  25. package/dist/libraries/include/freetype2/freetype/config/ftoption.h +0 -1011
  26. package/dist/libraries/include/freetype2/freetype/config/ftstdlib.h +0 -175
  27. package/dist/libraries/include/freetype2/freetype/config/integer-types.h +0 -245
  28. package/dist/libraries/include/freetype2/freetype/config/mac-support.h +0 -49
  29. package/dist/libraries/include/freetype2/freetype/config/public-macros.h +0 -120
  30. package/dist/libraries/include/freetype2/freetype/freetype.h +0 -4833
  31. package/dist/libraries/include/freetype2/freetype/ftadvanc.h +0 -188
  32. package/dist/libraries/include/freetype2/freetype/ftbbox.h +0 -101
  33. package/dist/libraries/include/freetype2/freetype/ftbdf.h +0 -212
  34. package/dist/libraries/include/freetype2/freetype/ftbitmap.h +0 -329
  35. package/dist/libraries/include/freetype2/freetype/ftbzip2.h +0 -102
  36. package/dist/libraries/include/freetype2/freetype/ftcache.h +0 -1087
  37. package/dist/libraries/include/freetype2/freetype/ftchapters.h +0 -147
  38. package/dist/libraries/include/freetype2/freetype/ftcid.h +0 -167
  39. package/dist/libraries/include/freetype2/freetype/ftcolor.h +0 -1609
  40. package/dist/libraries/include/freetype2/freetype/ftdriver.h +0 -1193
  41. package/dist/libraries/include/freetype2/freetype/fterrdef.h +0 -279
  42. package/dist/libraries/include/freetype2/freetype/fterrors.h +0 -296
  43. package/dist/libraries/include/freetype2/freetype/ftfntfmt.h +0 -93
  44. package/dist/libraries/include/freetype2/freetype/ftgasp.h +0 -143
  45. package/dist/libraries/include/freetype2/freetype/ftglyph.h +0 -664
  46. package/dist/libraries/include/freetype2/freetype/ftgxval.h +0 -354
  47. package/dist/libraries/include/freetype2/freetype/ftgzip.h +0 -151
  48. package/dist/libraries/include/freetype2/freetype/ftimage.h +0 -1276
  49. package/dist/libraries/include/freetype2/freetype/ftincrem.h +0 -348
  50. package/dist/libraries/include/freetype2/freetype/ftlcdfil.h +0 -323
  51. package/dist/libraries/include/freetype2/freetype/ftlist.h +0 -296
  52. package/dist/libraries/include/freetype2/freetype/ftlogging.h +0 -184
  53. package/dist/libraries/include/freetype2/freetype/ftlzw.h +0 -100
  54. package/dist/libraries/include/freetype2/freetype/ftmac.h +0 -289
  55. package/dist/libraries/include/freetype2/freetype/ftmm.h +0 -752
  56. package/dist/libraries/include/freetype2/freetype/ftmodapi.h +0 -806
  57. package/dist/libraries/include/freetype2/freetype/ftmoderr.h +0 -204
  58. package/dist/libraries/include/freetype2/freetype/ftotval.h +0 -206
  59. package/dist/libraries/include/freetype2/freetype/ftoutln.h +0 -586
  60. package/dist/libraries/include/freetype2/freetype/ftparams.h +0 -203
  61. package/dist/libraries/include/freetype2/freetype/ftpfr.h +0 -179
  62. package/dist/libraries/include/freetype2/freetype/ftrender.h +0 -244
  63. package/dist/libraries/include/freetype2/freetype/ftsizes.h +0 -159
  64. package/dist/libraries/include/freetype2/freetype/ftsnames.h +0 -272
  65. package/dist/libraries/include/freetype2/freetype/ftstroke.h +0 -773
  66. package/dist/libraries/include/freetype2/freetype/ftsynth.h +0 -83
  67. package/dist/libraries/include/freetype2/freetype/ftsystem.h +0 -352
  68. package/dist/libraries/include/freetype2/freetype/fttrigon.h +0 -350
  69. package/dist/libraries/include/freetype2/freetype/fttypes.h +0 -615
  70. package/dist/libraries/include/freetype2/freetype/ftwinfnt.h +0 -276
  71. package/dist/libraries/include/freetype2/freetype/t1tables.h +0 -773
  72. package/dist/libraries/include/freetype2/freetype/ttnameid.h +0 -1235
  73. package/dist/libraries/include/freetype2/freetype/tttables.h +0 -855
  74. package/dist/libraries/include/freetype2/freetype/tttags.h +0 -123
  75. package/dist/libraries/include/freetype2/ft2build.h +0 -42
  76. package/dist/libraries/include/fribidi/fribidi-arabic.h +0 -81
  77. package/dist/libraries/include/fribidi/fribidi-begindecls.h +0 -3
  78. package/dist/libraries/include/fribidi/fribidi-bidi-types-list.h +0 -96
  79. package/dist/libraries/include/fribidi/fribidi-bidi-types.h +0 -405
  80. package/dist/libraries/include/fribidi/fribidi-bidi.h +0 -142
  81. package/dist/libraries/include/fribidi/fribidi-brackets.h +0 -89
  82. package/dist/libraries/include/fribidi/fribidi-char-sets-list.h +0 -54
  83. package/dist/libraries/include/fribidi/fribidi-char-sets.h +0 -106
  84. package/dist/libraries/include/fribidi/fribidi-common.h +0 -158
  85. package/dist/libraries/include/fribidi/fribidi-config.h +0 -23
  86. package/dist/libraries/include/fribidi/fribidi-deprecated.h +0 -175
  87. package/dist/libraries/include/fribidi/fribidi-enddecls.h +0 -3
  88. package/dist/libraries/include/fribidi/fribidi-flags.h +0 -72
  89. package/dist/libraries/include/fribidi/fribidi-joining-types-list.h +0 -44
  90. package/dist/libraries/include/fribidi/fribidi-joining-types.h +0 -249
  91. package/dist/libraries/include/fribidi/fribidi-joining.h +0 -74
  92. package/dist/libraries/include/fribidi/fribidi-mirroring.h +0 -86
  93. package/dist/libraries/include/fribidi/fribidi-shape.h +0 -71
  94. package/dist/libraries/include/fribidi/fribidi-types.h +0 -79
  95. package/dist/libraries/include/fribidi/fribidi-unicode-version.h +0 -10
  96. package/dist/libraries/include/fribidi/fribidi-unicode.h +0 -105
  97. package/dist/libraries/include/fribidi/fribidi.h +0 -129
  98. package/dist/libraries/include/harfbuzz/hb-aat-layout.h +0 -795
  99. package/dist/libraries/include/harfbuzz/hb-aat.h +0 -38
  100. package/dist/libraries/include/harfbuzz/hb-blob.h +0 -160
  101. package/dist/libraries/include/harfbuzz/hb-buffer.h +0 -799
  102. package/dist/libraries/include/harfbuzz/hb-common.h +0 -902
  103. package/dist/libraries/include/harfbuzz/hb-cplusplus.hh +0 -221
  104. package/dist/libraries/include/harfbuzz/hb-deprecated.h +0 -251
  105. package/dist/libraries/include/harfbuzz/hb-draw.h +0 -325
  106. package/dist/libraries/include/harfbuzz/hb-face.h +0 -181
  107. package/dist/libraries/include/harfbuzz/hb-font.h +0 -1108
  108. package/dist/libraries/include/harfbuzz/hb-ft.h +0 -145
  109. package/dist/libraries/include/harfbuzz/hb-map.h +0 -124
  110. package/dist/libraries/include/harfbuzz/hb-ot-color.h +0 -146
  111. package/dist/libraries/include/harfbuzz/hb-ot-deprecated.h +0 -141
  112. package/dist/libraries/include/harfbuzz/hb-ot-font.h +0 -45
  113. package/dist/libraries/include/harfbuzz/hb-ot-layout.h +0 -503
  114. package/dist/libraries/include/harfbuzz/hb-ot-math.h +0 -333
  115. package/dist/libraries/include/harfbuzz/hb-ot-meta.h +0 -72
  116. package/dist/libraries/include/harfbuzz/hb-ot-metrics.h +0 -129
  117. package/dist/libraries/include/harfbuzz/hb-ot-name.h +0 -158
  118. package/dist/libraries/include/harfbuzz/hb-ot-shape.h +0 -53
  119. package/dist/libraries/include/harfbuzz/hb-ot-var.h +0 -191
  120. package/dist/libraries/include/harfbuzz/hb-ot.h +0 -49
  121. package/dist/libraries/include/harfbuzz/hb-set.h +0 -200
  122. package/dist/libraries/include/harfbuzz/hb-shape-plan.h +0 -122
  123. package/dist/libraries/include/harfbuzz/hb-shape.h +0 -62
  124. package/dist/libraries/include/harfbuzz/hb-style.h +0 -81
  125. package/dist/libraries/include/harfbuzz/hb-subset-repacker.h +0 -81
  126. package/dist/libraries/include/harfbuzz/hb-subset.h +0 -234
  127. package/dist/libraries/include/harfbuzz/hb-unicode.h +0 -643
  128. package/dist/libraries/include/harfbuzz/hb-version.h +0 -95
  129. package/dist/libraries/include/harfbuzz/hb.h +0 -50
  130. package/dist/libraries/lib/cmake/expat-2.4.7/expat-config-version.cmake +0 -70
  131. package/dist/libraries/lib/cmake/expat-2.4.7/expat-config.cmake +0 -99
  132. package/dist/libraries/lib/cmake/expat-2.4.7/expat-noconfig.cmake +0 -19
  133. package/dist/libraries/lib/cmake/expat-2.4.7/expat.cmake +0 -99
  134. package/dist/libraries/lib/libass.a +0 -0
  135. package/dist/libraries/lib/libass.la +0 -41
  136. package/dist/libraries/lib/libbrotlicommon.a +0 -0
  137. package/dist/libraries/lib/libbrotlidec.a +0 -0
  138. package/dist/libraries/lib/libbrotlienc.a +0 -0
  139. package/dist/libraries/lib/libexpat.a +0 -0
  140. package/dist/libraries/lib/libfontconfig.a +0 -0
  141. package/dist/libraries/lib/libfontconfig.la +0 -41
  142. package/dist/libraries/lib/libfreetype.a +0 -0
  143. package/dist/libraries/lib/libfreetype.la +0 -41
  144. package/dist/libraries/lib/libfribidi.a +0 -0
  145. package/dist/libraries/lib/libfribidi.la +0 -41
  146. package/dist/libraries/lib/libharfbuzz-subset.a +0 -0
  147. package/dist/libraries/lib/libharfbuzz-subset.la +0 -41
  148. package/dist/libraries/lib/libharfbuzz.a +0 -0
  149. package/dist/libraries/lib/libharfbuzz.la +0 -41
  150. package/dist/libraries/lib/pkgconfig/expat.pc +0 -11
  151. package/dist/libraries/lib/pkgconfig/fontconfig.pc +0 -18
  152. package/dist/libraries/lib/pkgconfig/freetype2.pc +0 -14
  153. package/dist/libraries/lib/pkgconfig/fribidi.pc +0 -13
  154. package/dist/libraries/lib/pkgconfig/harfbuzz-subset.pc +0 -12
  155. package/dist/libraries/lib/pkgconfig/harfbuzz.pc +0 -13
  156. package/dist/libraries/lib/pkgconfig/libass.pc +0 -13
  157. package/dist/libraries/lib/pkgconfig/libbrotlicommon.pc +0 -11
  158. package/dist/libraries/lib/pkgconfig/libbrotlidec.pc +0 -12
  159. package/dist/libraries/lib/pkgconfig/libbrotlienc.pc +0 -12
  160. package/dist/libraries/share/aclocal/freetype2.m4 +0 -194
  161. package/dist/libraries/share/doc/expat/AUTHORS +0 -10
  162. package/dist/libraries/share/doc/expat/changelog +0 -1161
  163. package/dist/license/all +0 -951
  164. package/dist/license/all.tmp +0 -307
  165. package/dist/license/brotli +0 -12
  166. package/dist/license/expat +0 -71
  167. package/dist/license/fontconfig +0 -46
  168. package/dist/license/freetype +0 -92
  169. package/dist/license/fribidi +0 -15
  170. package/dist/license/harfbuzz +0 -32
  171. package/dist/license/jassub +0 -0
  172. package/dist/license/libass +0 -28
@@ -1,773 +0,0 @@
1
- /****************************************************************************
2
- *
3
- * ftstroke.h
4
- *
5
- * FreeType path stroker (specification).
6
- *
7
- * Copyright (C) 2002-2021 by
8
- * David Turner, Robert Wilhelm, and Werner Lemberg.
9
- *
10
- * This file is part of the FreeType project, and may only be used,
11
- * modified, and distributed under the terms of the FreeType project
12
- * license, LICENSE.TXT. By continuing to use, modify, or distribute
13
- * this file you indicate that you have read the license and
14
- * understand and accept it fully.
15
- *
16
- */
17
-
18
-
19
- #ifndef FTSTROKE_H_
20
- #define FTSTROKE_H_
21
-
22
- #include <freetype/ftoutln.h>
23
- #include <freetype/ftglyph.h>
24
-
25
-
26
- FT_BEGIN_HEADER
27
-
28
-
29
- /**************************************************************************
30
- *
31
- * @section:
32
- * glyph_stroker
33
- *
34
- * @title:
35
- * Glyph Stroker
36
- *
37
- * @abstract:
38
- * Generating bordered and stroked glyphs.
39
- *
40
- * @description:
41
- * This component generates stroked outlines of a given vectorial glyph.
42
- * It also allows you to retrieve the 'outside' and/or the 'inside'
43
- * borders of the stroke.
44
- *
45
- * This can be useful to generate 'bordered' glyph, i.e., glyphs
46
- * displayed with a colored (and anti-aliased) border around their
47
- * shape.
48
- *
49
- * @order:
50
- * FT_Stroker
51
- *
52
- * FT_Stroker_LineJoin
53
- * FT_Stroker_LineCap
54
- * FT_StrokerBorder
55
- *
56
- * FT_Outline_GetInsideBorder
57
- * FT_Outline_GetOutsideBorder
58
- *
59
- * FT_Glyph_Stroke
60
- * FT_Glyph_StrokeBorder
61
- *
62
- * FT_Stroker_New
63
- * FT_Stroker_Set
64
- * FT_Stroker_Rewind
65
- * FT_Stroker_ParseOutline
66
- * FT_Stroker_Done
67
- *
68
- * FT_Stroker_BeginSubPath
69
- * FT_Stroker_EndSubPath
70
- *
71
- * FT_Stroker_LineTo
72
- * FT_Stroker_ConicTo
73
- * FT_Stroker_CubicTo
74
- *
75
- * FT_Stroker_GetBorderCounts
76
- * FT_Stroker_ExportBorder
77
- * FT_Stroker_GetCounts
78
- * FT_Stroker_Export
79
- *
80
- */
81
-
82
-
83
- /**************************************************************************
84
- *
85
- * @type:
86
- * FT_Stroker
87
- *
88
- * @description:
89
- * Opaque handle to a path stroker object.
90
- */
91
- typedef struct FT_StrokerRec_* FT_Stroker;
92
-
93
-
94
- /**************************************************************************
95
- *
96
- * @enum:
97
- * FT_Stroker_LineJoin
98
- *
99
- * @description:
100
- * These values determine how two joining lines are rendered in a
101
- * stroker.
102
- *
103
- * @values:
104
- * FT_STROKER_LINEJOIN_ROUND ::
105
- * Used to render rounded line joins. Circular arcs are used to join
106
- * two lines smoothly.
107
- *
108
- * FT_STROKER_LINEJOIN_BEVEL ::
109
- * Used to render beveled line joins. The outer corner of the joined
110
- * lines is filled by enclosing the triangular region of the corner
111
- * with a straight line between the outer corners of each stroke.
112
- *
113
- * FT_STROKER_LINEJOIN_MITER_FIXED ::
114
- * Used to render mitered line joins, with fixed bevels if the miter
115
- * limit is exceeded. The outer edges of the strokes for the two
116
- * segments are extended until they meet at an angle. A bevel join
117
- * (see above) is used if the segments meet at too sharp an angle and
118
- * the outer edges meet beyond a distance corresponding to the meter
119
- * limit. This prevents long spikes being created.
120
- * `FT_STROKER_LINEJOIN_MITER_FIXED` generates a miter line join as
121
- * used in PostScript and PDF.
122
- *
123
- * FT_STROKER_LINEJOIN_MITER_VARIABLE ::
124
- * FT_STROKER_LINEJOIN_MITER ::
125
- * Used to render mitered line joins, with variable bevels if the miter
126
- * limit is exceeded. The intersection of the strokes is clipped
127
- * perpendicularly to the bisector, at a distance corresponding to
128
- * the miter limit. This prevents long spikes being created.
129
- * `FT_STROKER_LINEJOIN_MITER_VARIABLE` generates a mitered line join
130
- * as used in XPS. `FT_STROKER_LINEJOIN_MITER` is an alias for
131
- * `FT_STROKER_LINEJOIN_MITER_VARIABLE`, retained for backward
132
- * compatibility.
133
- */
134
- typedef enum FT_Stroker_LineJoin_
135
- {
136
- FT_STROKER_LINEJOIN_ROUND = 0,
137
- FT_STROKER_LINEJOIN_BEVEL = 1,
138
- FT_STROKER_LINEJOIN_MITER_VARIABLE = 2,
139
- FT_STROKER_LINEJOIN_MITER = FT_STROKER_LINEJOIN_MITER_VARIABLE,
140
- FT_STROKER_LINEJOIN_MITER_FIXED = 3
141
-
142
- } FT_Stroker_LineJoin;
143
-
144
-
145
- /**************************************************************************
146
- *
147
- * @enum:
148
- * FT_Stroker_LineCap
149
- *
150
- * @description:
151
- * These values determine how the end of opened sub-paths are rendered in
152
- * a stroke.
153
- *
154
- * @values:
155
- * FT_STROKER_LINECAP_BUTT ::
156
- * The end of lines is rendered as a full stop on the last point
157
- * itself.
158
- *
159
- * FT_STROKER_LINECAP_ROUND ::
160
- * The end of lines is rendered as a half-circle around the last point.
161
- *
162
- * FT_STROKER_LINECAP_SQUARE ::
163
- * The end of lines is rendered as a square around the last point.
164
- */
165
- typedef enum FT_Stroker_LineCap_
166
- {
167
- FT_STROKER_LINECAP_BUTT = 0,
168
- FT_STROKER_LINECAP_ROUND,
169
- FT_STROKER_LINECAP_SQUARE
170
-
171
- } FT_Stroker_LineCap;
172
-
173
-
174
- /**************************************************************************
175
- *
176
- * @enum:
177
- * FT_StrokerBorder
178
- *
179
- * @description:
180
- * These values are used to select a given stroke border in
181
- * @FT_Stroker_GetBorderCounts and @FT_Stroker_ExportBorder.
182
- *
183
- * @values:
184
- * FT_STROKER_BORDER_LEFT ::
185
- * Select the left border, relative to the drawing direction.
186
- *
187
- * FT_STROKER_BORDER_RIGHT ::
188
- * Select the right border, relative to the drawing direction.
189
- *
190
- * @note:
191
- * Applications are generally interested in the 'inside' and 'outside'
192
- * borders. However, there is no direct mapping between these and the
193
- * 'left' and 'right' ones, since this really depends on the glyph's
194
- * drawing orientation, which varies between font formats.
195
- *
196
- * You can however use @FT_Outline_GetInsideBorder and
197
- * @FT_Outline_GetOutsideBorder to get these.
198
- */
199
- typedef enum FT_StrokerBorder_
200
- {
201
- FT_STROKER_BORDER_LEFT = 0,
202
- FT_STROKER_BORDER_RIGHT
203
-
204
- } FT_StrokerBorder;
205
-
206
-
207
- /**************************************************************************
208
- *
209
- * @function:
210
- * FT_Outline_GetInsideBorder
211
- *
212
- * @description:
213
- * Retrieve the @FT_StrokerBorder value corresponding to the 'inside'
214
- * borders of a given outline.
215
- *
216
- * @input:
217
- * outline ::
218
- * The source outline handle.
219
- *
220
- * @return:
221
- * The border index. @FT_STROKER_BORDER_RIGHT for empty or invalid
222
- * outlines.
223
- */
224
- FT_EXPORT( FT_StrokerBorder )
225
- FT_Outline_GetInsideBorder( FT_Outline* outline );
226
-
227
-
228
- /**************************************************************************
229
- *
230
- * @function:
231
- * FT_Outline_GetOutsideBorder
232
- *
233
- * @description:
234
- * Retrieve the @FT_StrokerBorder value corresponding to the 'outside'
235
- * borders of a given outline.
236
- *
237
- * @input:
238
- * outline ::
239
- * The source outline handle.
240
- *
241
- * @return:
242
- * The border index. @FT_STROKER_BORDER_LEFT for empty or invalid
243
- * outlines.
244
- */
245
- FT_EXPORT( FT_StrokerBorder )
246
- FT_Outline_GetOutsideBorder( FT_Outline* outline );
247
-
248
-
249
- /**************************************************************************
250
- *
251
- * @function:
252
- * FT_Stroker_New
253
- *
254
- * @description:
255
- * Create a new stroker object.
256
- *
257
- * @input:
258
- * library ::
259
- * FreeType library handle.
260
- *
261
- * @output:
262
- * astroker ::
263
- * A new stroker object handle. `NULL` in case of error.
264
- *
265
- * @return:
266
- * FreeType error code. 0~means success.
267
- */
268
- FT_EXPORT( FT_Error )
269
- FT_Stroker_New( FT_Library library,
270
- FT_Stroker *astroker );
271
-
272
-
273
- /**************************************************************************
274
- *
275
- * @function:
276
- * FT_Stroker_Set
277
- *
278
- * @description:
279
- * Reset a stroker object's attributes.
280
- *
281
- * @input:
282
- * stroker ::
283
- * The target stroker handle.
284
- *
285
- * radius ::
286
- * The border radius.
287
- *
288
- * line_cap ::
289
- * The line cap style.
290
- *
291
- * line_join ::
292
- * The line join style.
293
- *
294
- * miter_limit ::
295
- * The maximum reciprocal sine of half-angle at the miter join,
296
- * expressed as 16.16 fixed point value.
297
- *
298
- * @note:
299
- * The `radius` is expressed in the same units as the outline
300
- * coordinates.
301
- *
302
- * The `miter_limit` multiplied by the `radius` gives the maximum size
303
- * of a miter spike, at which it is clipped for
304
- * @FT_STROKER_LINEJOIN_MITER_VARIABLE or replaced with a bevel join for
305
- * @FT_STROKER_LINEJOIN_MITER_FIXED.
306
- *
307
- * This function calls @FT_Stroker_Rewind automatically.
308
- */
309
- FT_EXPORT( void )
310
- FT_Stroker_Set( FT_Stroker stroker,
311
- FT_Fixed radius,
312
- FT_Stroker_LineCap line_cap,
313
- FT_Stroker_LineJoin line_join,
314
- FT_Fixed miter_limit );
315
-
316
-
317
- /**************************************************************************
318
- *
319
- * @function:
320
- * FT_Stroker_Rewind
321
- *
322
- * @description:
323
- * Reset a stroker object without changing its attributes. You should
324
- * call this function before beginning a new series of calls to
325
- * @FT_Stroker_BeginSubPath or @FT_Stroker_EndSubPath.
326
- *
327
- * @input:
328
- * stroker ::
329
- * The target stroker handle.
330
- */
331
- FT_EXPORT( void )
332
- FT_Stroker_Rewind( FT_Stroker stroker );
333
-
334
-
335
- /**************************************************************************
336
- *
337
- * @function:
338
- * FT_Stroker_ParseOutline
339
- *
340
- * @description:
341
- * A convenience function used to parse a whole outline with the stroker.
342
- * The resulting outline(s) can be retrieved later by functions like
343
- * @FT_Stroker_GetCounts and @FT_Stroker_Export.
344
- *
345
- * @input:
346
- * stroker ::
347
- * The target stroker handle.
348
- *
349
- * outline ::
350
- * The source outline.
351
- *
352
- * opened ::
353
- * A boolean. If~1, the outline is treated as an open path instead of
354
- * a closed one.
355
- *
356
- * @return:
357
- * FreeType error code. 0~means success.
358
- *
359
- * @note:
360
- * If `opened` is~0 (the default), the outline is treated as a closed
361
- * path, and the stroker generates two distinct 'border' outlines.
362
- *
363
- * If `opened` is~1, the outline is processed as an open path, and the
364
- * stroker generates a single 'stroke' outline.
365
- *
366
- * This function calls @FT_Stroker_Rewind automatically.
367
- */
368
- FT_EXPORT( FT_Error )
369
- FT_Stroker_ParseOutline( FT_Stroker stroker,
370
- FT_Outline* outline,
371
- FT_Bool opened );
372
-
373
-
374
- /**************************************************************************
375
- *
376
- * @function:
377
- * FT_Stroker_BeginSubPath
378
- *
379
- * @description:
380
- * Start a new sub-path in the stroker.
381
- *
382
- * @input:
383
- * stroker ::
384
- * The target stroker handle.
385
- *
386
- * to ::
387
- * A pointer to the start vector.
388
- *
389
- * open ::
390
- * A boolean. If~1, the sub-path is treated as an open one.
391
- *
392
- * @return:
393
- * FreeType error code. 0~means success.
394
- *
395
- * @note:
396
- * This function is useful when you need to stroke a path that is not
397
- * stored as an @FT_Outline object.
398
- */
399
- FT_EXPORT( FT_Error )
400
- FT_Stroker_BeginSubPath( FT_Stroker stroker,
401
- FT_Vector* to,
402
- FT_Bool open );
403
-
404
-
405
- /**************************************************************************
406
- *
407
- * @function:
408
- * FT_Stroker_EndSubPath
409
- *
410
- * @description:
411
- * Close the current sub-path in the stroker.
412
- *
413
- * @input:
414
- * stroker ::
415
- * The target stroker handle.
416
- *
417
- * @return:
418
- * FreeType error code. 0~means success.
419
- *
420
- * @note:
421
- * You should call this function after @FT_Stroker_BeginSubPath. If the
422
- * subpath was not 'opened', this function 'draws' a single line segment
423
- * to the start position when needed.
424
- */
425
- FT_EXPORT( FT_Error )
426
- FT_Stroker_EndSubPath( FT_Stroker stroker );
427
-
428
-
429
- /**************************************************************************
430
- *
431
- * @function:
432
- * FT_Stroker_LineTo
433
- *
434
- * @description:
435
- * 'Draw' a single line segment in the stroker's current sub-path, from
436
- * the last position.
437
- *
438
- * @input:
439
- * stroker ::
440
- * The target stroker handle.
441
- *
442
- * to ::
443
- * A pointer to the destination point.
444
- *
445
- * @return:
446
- * FreeType error code. 0~means success.
447
- *
448
- * @note:
449
- * You should call this function between @FT_Stroker_BeginSubPath and
450
- * @FT_Stroker_EndSubPath.
451
- */
452
- FT_EXPORT( FT_Error )
453
- FT_Stroker_LineTo( FT_Stroker stroker,
454
- FT_Vector* to );
455
-
456
-
457
- /**************************************************************************
458
- *
459
- * @function:
460
- * FT_Stroker_ConicTo
461
- *
462
- * @description:
463
- * 'Draw' a single quadratic Bezier in the stroker's current sub-path,
464
- * from the last position.
465
- *
466
- * @input:
467
- * stroker ::
468
- * The target stroker handle.
469
- *
470
- * control ::
471
- * A pointer to a Bezier control point.
472
- *
473
- * to ::
474
- * A pointer to the destination point.
475
- *
476
- * @return:
477
- * FreeType error code. 0~means success.
478
- *
479
- * @note:
480
- * You should call this function between @FT_Stroker_BeginSubPath and
481
- * @FT_Stroker_EndSubPath.
482
- */
483
- FT_EXPORT( FT_Error )
484
- FT_Stroker_ConicTo( FT_Stroker stroker,
485
- FT_Vector* control,
486
- FT_Vector* to );
487
-
488
-
489
- /**************************************************************************
490
- *
491
- * @function:
492
- * FT_Stroker_CubicTo
493
- *
494
- * @description:
495
- * 'Draw' a single cubic Bezier in the stroker's current sub-path, from
496
- * the last position.
497
- *
498
- * @input:
499
- * stroker ::
500
- * The target stroker handle.
501
- *
502
- * control1 ::
503
- * A pointer to the first Bezier control point.
504
- *
505
- * control2 ::
506
- * A pointer to second Bezier control point.
507
- *
508
- * to ::
509
- * A pointer to the destination point.
510
- *
511
- * @return:
512
- * FreeType error code. 0~means success.
513
- *
514
- * @note:
515
- * You should call this function between @FT_Stroker_BeginSubPath and
516
- * @FT_Stroker_EndSubPath.
517
- */
518
- FT_EXPORT( FT_Error )
519
- FT_Stroker_CubicTo( FT_Stroker stroker,
520
- FT_Vector* control1,
521
- FT_Vector* control2,
522
- FT_Vector* to );
523
-
524
-
525
- /**************************************************************************
526
- *
527
- * @function:
528
- * FT_Stroker_GetBorderCounts
529
- *
530
- * @description:
531
- * Call this function once you have finished parsing your paths with the
532
- * stroker. It returns the number of points and contours necessary to
533
- * export one of the 'border' or 'stroke' outlines generated by the
534
- * stroker.
535
- *
536
- * @input:
537
- * stroker ::
538
- * The target stroker handle.
539
- *
540
- * border ::
541
- * The border index.
542
- *
543
- * @output:
544
- * anum_points ::
545
- * The number of points.
546
- *
547
- * anum_contours ::
548
- * The number of contours.
549
- *
550
- * @return:
551
- * FreeType error code. 0~means success.
552
- *
553
- * @note:
554
- * When an outline, or a sub-path, is 'closed', the stroker generates two
555
- * independent 'border' outlines, named 'left' and 'right'.
556
- *
557
- * When the outline, or a sub-path, is 'opened', the stroker merges the
558
- * 'border' outlines with caps. The 'left' border receives all points,
559
- * while the 'right' border becomes empty.
560
- *
561
- * Use the function @FT_Stroker_GetCounts instead if you want to retrieve
562
- * the counts associated to both borders.
563
- */
564
- FT_EXPORT( FT_Error )
565
- FT_Stroker_GetBorderCounts( FT_Stroker stroker,
566
- FT_StrokerBorder border,
567
- FT_UInt *anum_points,
568
- FT_UInt *anum_contours );
569
-
570
-
571
- /**************************************************************************
572
- *
573
- * @function:
574
- * FT_Stroker_ExportBorder
575
- *
576
- * @description:
577
- * Call this function after @FT_Stroker_GetBorderCounts to export the
578
- * corresponding border to your own @FT_Outline structure.
579
- *
580
- * Note that this function appends the border points and contours to your
581
- * outline, but does not try to resize its arrays.
582
- *
583
- * @input:
584
- * stroker ::
585
- * The target stroker handle.
586
- *
587
- * border ::
588
- * The border index.
589
- *
590
- * outline ::
591
- * The target outline handle.
592
- *
593
- * @note:
594
- * Always call this function after @FT_Stroker_GetBorderCounts to get
595
- * sure that there is enough room in your @FT_Outline object to receive
596
- * all new data.
597
- *
598
- * When an outline, or a sub-path, is 'closed', the stroker generates two
599
- * independent 'border' outlines, named 'left' and 'right'.
600
- *
601
- * When the outline, or a sub-path, is 'opened', the stroker merges the
602
- * 'border' outlines with caps. The 'left' border receives all points,
603
- * while the 'right' border becomes empty.
604
- *
605
- * Use the function @FT_Stroker_Export instead if you want to retrieve
606
- * all borders at once.
607
- */
608
- FT_EXPORT( void )
609
- FT_Stroker_ExportBorder( FT_Stroker stroker,
610
- FT_StrokerBorder border,
611
- FT_Outline* outline );
612
-
613
-
614
- /**************************************************************************
615
- *
616
- * @function:
617
- * FT_Stroker_GetCounts
618
- *
619
- * @description:
620
- * Call this function once you have finished parsing your paths with the
621
- * stroker. It returns the number of points and contours necessary to
622
- * export all points/borders from the stroked outline/path.
623
- *
624
- * @input:
625
- * stroker ::
626
- * The target stroker handle.
627
- *
628
- * @output:
629
- * anum_points ::
630
- * The number of points.
631
- *
632
- * anum_contours ::
633
- * The number of contours.
634
- *
635
- * @return:
636
- * FreeType error code. 0~means success.
637
- */
638
- FT_EXPORT( FT_Error )
639
- FT_Stroker_GetCounts( FT_Stroker stroker,
640
- FT_UInt *anum_points,
641
- FT_UInt *anum_contours );
642
-
643
-
644
- /**************************************************************************
645
- *
646
- * @function:
647
- * FT_Stroker_Export
648
- *
649
- * @description:
650
- * Call this function after @FT_Stroker_GetBorderCounts to export all
651
- * borders to your own @FT_Outline structure.
652
- *
653
- * Note that this function appends the border points and contours to your
654
- * outline, but does not try to resize its arrays.
655
- *
656
- * @input:
657
- * stroker ::
658
- * The target stroker handle.
659
- *
660
- * outline ::
661
- * The target outline handle.
662
- */
663
- FT_EXPORT( void )
664
- FT_Stroker_Export( FT_Stroker stroker,
665
- FT_Outline* outline );
666
-
667
-
668
- /**************************************************************************
669
- *
670
- * @function:
671
- * FT_Stroker_Done
672
- *
673
- * @description:
674
- * Destroy a stroker object.
675
- *
676
- * @input:
677
- * stroker ::
678
- * A stroker handle. Can be `NULL`.
679
- */
680
- FT_EXPORT( void )
681
- FT_Stroker_Done( FT_Stroker stroker );
682
-
683
-
684
- /**************************************************************************
685
- *
686
- * @function:
687
- * FT_Glyph_Stroke
688
- *
689
- * @description:
690
- * Stroke a given outline glyph object with a given stroker.
691
- *
692
- * @inout:
693
- * pglyph ::
694
- * Source glyph handle on input, new glyph handle on output.
695
- *
696
- * @input:
697
- * stroker ::
698
- * A stroker handle.
699
- *
700
- * destroy ::
701
- * A Boolean. If~1, the source glyph object is destroyed on success.
702
- *
703
- * @return:
704
- * FreeType error code. 0~means success.
705
- *
706
- * @note:
707
- * The source glyph is untouched in case of error.
708
- *
709
- * Adding stroke may yield a significantly wider and taller glyph
710
- * depending on how large of a radius was used to stroke the glyph. You
711
- * may need to manually adjust horizontal and vertical advance amounts to
712
- * account for this added size.
713
- */
714
- FT_EXPORT( FT_Error )
715
- FT_Glyph_Stroke( FT_Glyph *pglyph,
716
- FT_Stroker stroker,
717
- FT_Bool destroy );
718
-
719
-
720
- /**************************************************************************
721
- *
722
- * @function:
723
- * FT_Glyph_StrokeBorder
724
- *
725
- * @description:
726
- * Stroke a given outline glyph object with a given stroker, but only
727
- * return either its inside or outside border.
728
- *
729
- * @inout:
730
- * pglyph ::
731
- * Source glyph handle on input, new glyph handle on output.
732
- *
733
- * @input:
734
- * stroker ::
735
- * A stroker handle.
736
- *
737
- * inside ::
738
- * A Boolean. If~1, return the inside border, otherwise the outside
739
- * border.
740
- *
741
- * destroy ::
742
- * A Boolean. If~1, the source glyph object is destroyed on success.
743
- *
744
- * @return:
745
- * FreeType error code. 0~means success.
746
- *
747
- * @note:
748
- * The source glyph is untouched in case of error.
749
- *
750
- * Adding stroke may yield a significantly wider and taller glyph
751
- * depending on how large of a radius was used to stroke the glyph. You
752
- * may need to manually adjust horizontal and vertical advance amounts to
753
- * account for this added size.
754
- */
755
- FT_EXPORT( FT_Error )
756
- FT_Glyph_StrokeBorder( FT_Glyph *pglyph,
757
- FT_Stroker stroker,
758
- FT_Bool inside,
759
- FT_Bool destroy );
760
-
761
- /* */
762
-
763
- FT_END_HEADER
764
-
765
- #endif /* FTSTROKE_H_ */
766
-
767
-
768
- /* END */
769
-
770
-
771
- /* Local Variables: */
772
- /* coding: utf-8 */
773
- /* End: */