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,81 +0,0 @@
1
- /*
2
- * Copyright © 2019 Ebrahim Byagowi
3
- *
4
- * This is part of HarfBuzz, a text shaping library.
5
- *
6
- * Permission is hereby granted, without written agreement and without
7
- * license or royalty fees, to use, copy, modify, and distribute this
8
- * software and its documentation for any purpose, provided that the
9
- * above copyright notice and the following two paragraphs appear in
10
- * all copies of this software.
11
- *
12
- * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
13
- * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
14
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
15
- * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
16
- * DAMAGE.
17
- *
18
- * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
19
- * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
20
- * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
21
- * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
22
- * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
23
- */
24
-
25
- #if !defined(HB_H_IN) && !defined(HB_NO_SINGLE_HEADER_ERROR)
26
- #error "Include <hb.h> instead."
27
- #endif
28
-
29
- #ifndef HB_STYLE_H
30
- #define HB_STYLE_H
31
-
32
- #include "hb.h"
33
-
34
- HB_BEGIN_DECLS
35
-
36
- /**
37
- * hb_style_tag_t:
38
- * @HB_STYLE_TAG_ITALIC: Used to vary between non-italic and italic.
39
- * A value of 0 can be interpreted as "Roman" (non-italic); a value of 1 can
40
- * be interpreted as (fully) italic.
41
- * @HB_STYLE_TAG_OPTICAL_SIZE: Used to vary design to suit different text sizes.
42
- * Non-zero. Values can be interpreted as text size, in points.
43
- * @HB_STYLE_TAG_SLANT_ANGLE: Used to vary between upright and slanted text. Values
44
- * must be greater than -90 and less than +90. Values can be interpreted as
45
- * the angle, in counter-clockwise degrees, of oblique slant from whatever the
46
- * designer considers to be upright for that font design. Typical right-leaning
47
- * Italic fonts have a negative slant angle (typically around -12)
48
- * @HB_STYLE_TAG_SLANT_RATIO: same as @HB_STYLE_TAG_SLANT_ANGLE expression as ratio.
49
- * Typical right-leaning Italic fonts have a positive slant ratio (typically around 0.2)
50
- * @HB_STYLE_TAG_WIDTH: Used to vary width of text from narrower to wider.
51
- * Non-zero. Values can be interpreted as a percentage of whatever the font
52
- * designer considers “normal width” for that font design.
53
- * @HB_STYLE_TAG_WEIGHT: Used to vary stroke thicknesses or other design details
54
- * to give variation from lighter to blacker. Values can be interpreted in direct
55
- * comparison to values for usWeightClass in the OS/2 table,
56
- * or the CSS font-weight property.
57
- *
58
- * Defined by [OpenType Design-Variation Axis Tag Registry](https://docs.microsoft.com/en-us/typography/opentype/spec/dvaraxisreg).
59
- *
60
- * Since: 3.0.0
61
- **/
62
- typedef enum
63
- {
64
- HB_STYLE_TAG_ITALIC = HB_TAG ('i','t','a','l'),
65
- HB_STYLE_TAG_OPTICAL_SIZE = HB_TAG ('o','p','s','z'),
66
- HB_STYLE_TAG_SLANT_ANGLE = HB_TAG ('s','l','n','t'),
67
- HB_STYLE_TAG_SLANT_RATIO = HB_TAG ('S','l','n','t'),
68
- HB_STYLE_TAG_WIDTH = HB_TAG ('w','d','t','h'),
69
- HB_STYLE_TAG_WEIGHT = HB_TAG ('w','g','h','t'),
70
-
71
- /*< private >*/
72
- _HB_STYLE_TAG_MAX_VALUE = HB_TAG_MAX_SIGNED /*< skip >*/
73
- } hb_style_tag_t;
74
-
75
-
76
- HB_EXTERN float
77
- hb_style_get_value (hb_font_t *font, hb_style_tag_t style_tag);
78
-
79
- HB_END_DECLS
80
-
81
- #endif /* HB_STYLE_H */
@@ -1,81 +0,0 @@
1
- /*
2
- * Copyright © 2022 Google, Inc.
3
- *
4
- * This is part of HarfBuzz, a text shaping library.
5
- *
6
- * Permission is hereby granted, without written agreement and without
7
- * license or royalty fees, to use, copy, modify, and distribute this
8
- * software and its documentation for any purpose, provided that the
9
- * above copyright notice and the following two paragraphs appear in
10
- * all copies of this software.
11
- *
12
- * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
13
- * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
14
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
15
- * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
16
- * DAMAGE.
17
- *
18
- * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
19
- * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
20
- * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
21
- * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
22
- * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
23
- *
24
- */
25
-
26
- #ifndef HB_SUBSET_REPACKER_H
27
- #define HB_SUBSET_REPACKER_H
28
-
29
- #include "hb.h"
30
-
31
- HB_BEGIN_DECLS
32
-
33
- #ifdef HB_EXPERIMENTAL_API
34
- /*
35
- * struct hb_link_t
36
- * width: offsetSize in bytes
37
- * position: position of the offset field in bytes
38
- * from beginning of subtable
39
- * objidx: index of subtable
40
- */
41
- struct hb_link_t
42
- {
43
- unsigned width;
44
- unsigned position;
45
- unsigned objidx;
46
- };
47
-
48
- typedef struct hb_link_t hb_link_t;
49
-
50
- /*
51
- * struct hb_object_t
52
- * head: start of object data
53
- * tail: end of object data
54
- * num_real_links: num of offset field in the object
55
- * real_links: pointer to array of offset info
56
- * num_virtual_links: num of objects that must be packed
57
- * after current object in the final serialized order
58
- * virtual_links: array of virtual link info
59
- */
60
- struct hb_object_t
61
- {
62
- char *head;
63
- char *tail;
64
- unsigned num_real_links;
65
- hb_link_t *real_links;
66
- unsigned num_virtual_links;
67
- hb_link_t *virtual_links;
68
- };
69
-
70
- typedef struct hb_object_t hb_object_t;
71
-
72
- HB_EXTERN hb_blob_t*
73
- hb_subset_repack_or_fail (hb_tag_t table_tag,
74
- hb_object_t* hb_objects,
75
- unsigned num_hb_objs);
76
-
77
- #endif
78
-
79
- HB_END_DECLS
80
-
81
- #endif /* HB_SUBSET_REPACKER_H */
@@ -1,234 +0,0 @@
1
- /*
2
- * Copyright © 2018 Google, Inc.
3
- *
4
- * This is part of HarfBuzz, a text shaping library.
5
- *
6
- * Permission is hereby granted, without written agreement and without
7
- * license or royalty fees, to use, copy, modify, and distribute this
8
- * software and its documentation for any purpose, provided that the
9
- * above copyright notice and the following two paragraphs appear in
10
- * all copies of this software.
11
- *
12
- * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
13
- * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
14
- * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
15
- * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
16
- * DAMAGE.
17
- *
18
- * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
19
- * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
20
- * FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS
21
- * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
22
- * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
23
- *
24
- * Google Author(s): Rod Sheeter
25
- */
26
-
27
- #ifndef HB_SUBSET_H
28
- #define HB_SUBSET_H
29
-
30
- #include "hb.h"
31
- #include "hb-ot.h"
32
-
33
- HB_BEGIN_DECLS
34
-
35
- /**
36
- * hb_subset_input_t:
37
- *
38
- * Things that change based on the input. Characters to keep, etc.
39
- */
40
-
41
- typedef struct hb_subset_input_t hb_subset_input_t;
42
-
43
- /**
44
- * hb_subset_plan_t:
45
- *
46
- * Contains information about how the subset operation will be executed.
47
- * Such as mappings from the old glyph ids to the new ones in the subset.
48
- */
49
-
50
- typedef struct hb_subset_plan_t hb_subset_plan_t;
51
-
52
- /**
53
- * hb_subset_flags_t:
54
- * @HB_SUBSET_FLAGS_DEFAULT: all flags at their default value of false.
55
- * @HB_SUBSET_FLAGS_NO_HINTING: If set hinting instructions will be dropped in
56
- * the produced subset. Otherwise hinting instructions will be retained.
57
- * @HB_SUBSET_FLAGS_RETAIN_GIDS: If set glyph indices will not be modified in
58
- * the produced subset. If glyphs are dropped their indices will be retained
59
- * as an empty glyph.
60
- * @HB_SUBSET_FLAGS_DESUBROUTINIZE: If set and subsetting a CFF font the
61
- * subsetter will attempt to remove subroutines from the CFF glyphs.
62
- * @HB_SUBSET_FLAGS_NAME_LEGACY: If set non-unicode name records will be
63
- * retained in the subset.
64
- * @HB_SUBSET_FLAGS_SET_OVERLAPS_FLAG: If set the subsetter will set the
65
- * OVERLAP_SIMPLE flag on each simple glyph.
66
- * @HB_SUBSET_FLAGS_PASSTHROUGH_UNRECOGNIZED: If set the subsetter will not
67
- * drop unrecognized tables and instead pass them through untouched.
68
- * @HB_SUBSET_FLAGS_NOTDEF_OUTLINE: If set the notdef glyph outline will be
69
- * retained in the final subset.
70
- * @HB_SUBSET_FLAGS_GLYPH_NAMES: If set the PS glyph names will be retained
71
- * in the final subset.
72
- * @HB_SUBSET_FLAGS_NO_PRUNE_UNICODE_RANGES: If set then the unicode ranges in
73
- * OS/2 will not be recalculated.
74
- * @HB_SUBSET_FLAGS_PATCH_MODE: If set the subsetter behaviour will be modified
75
- * to produce a subset that is better suited to patching. For example cmap
76
- * subtable format will be kept stable.
77
- * @HB_SUBSET_FLAGS_OMIT_GLYF: If set the subsetter won't actually produce the final
78
- * glyf table bytes. The table directory will include and entry as if the table was
79
- * there but the actual final font blob will be truncated prior to the glyf data. This
80
- * is a useful performance optimization when a font aware binary patching algorithm
81
- * is being used to diff two subsets.
82
- *
83
- * List of boolean properties that can be configured on the subset input.
84
- *
85
- * Since: 2.9.0
86
- **/
87
- typedef enum { /*< flags >*/
88
- HB_SUBSET_FLAGS_DEFAULT = 0x00000000u,
89
- HB_SUBSET_FLAGS_NO_HINTING = 0x00000001u,
90
- HB_SUBSET_FLAGS_RETAIN_GIDS = 0x00000002u,
91
- HB_SUBSET_FLAGS_DESUBROUTINIZE = 0x00000004u,
92
- HB_SUBSET_FLAGS_NAME_LEGACY = 0x00000008u,
93
- HB_SUBSET_FLAGS_SET_OVERLAPS_FLAG = 0x00000010u,
94
- HB_SUBSET_FLAGS_PASSTHROUGH_UNRECOGNIZED = 0x00000020u,
95
- HB_SUBSET_FLAGS_NOTDEF_OUTLINE = 0x00000040u,
96
- HB_SUBSET_FLAGS_GLYPH_NAMES = 0x00000080u,
97
- HB_SUBSET_FLAGS_NO_PRUNE_UNICODE_RANGES = 0x00000100u,
98
- // Not supported yet: HB_SUBSET_FLAGS_PATCH_MODE = 0x00000200u,
99
- // Not supported yet: HB_SUBSET_FLAGS_OMIT_GLYF = 0x00000400u,
100
- } hb_subset_flags_t;
101
-
102
- /**
103
- * hb_subset_sets_t:
104
- * @HB_SUBSET_SETS_GLYPH_INDEX: the set of glyph indexes to retain in the subset.
105
- * @HB_SUBSET_SETS_UNICODE: the set of unicode codepoints to retain in the subset.
106
- * @HB_SUBSET_SETS_NO_SUBSET_TABLE_TAG: the set of table tags which specifies tables that should not be
107
- * subsetted.
108
- * @HB_SUBSET_SETS_DROP_TABLE_TAG: the set of table tags which specifies tables which will be dropped
109
- * in the subset.
110
- * @HB_SUBSET_SETS_NAME_ID: the set of name ids that will be retained.
111
- * @HB_SUBSET_SETS_NAME_LANG_ID: the set of name lang ids that will be retained.
112
- * @HB_SUBSET_SETS_LAYOUT_FEATURE_TAG: the set of layout feature tags that will be retained
113
- * in the subset.
114
- * @HB_SUBSET_SETS_LAYOUT_SCRIPT_TAG: the set of layout script tags that will be retained
115
- * in the subset. Defaults to all tags. Since: 5.0.0
116
- *
117
- * List of sets that can be configured on the subset input.
118
- *
119
- * Since: 2.9.1
120
- **/
121
- typedef enum {
122
- HB_SUBSET_SETS_GLYPH_INDEX = 0,
123
- HB_SUBSET_SETS_UNICODE,
124
- HB_SUBSET_SETS_NO_SUBSET_TABLE_TAG,
125
- HB_SUBSET_SETS_DROP_TABLE_TAG,
126
- HB_SUBSET_SETS_NAME_ID,
127
- HB_SUBSET_SETS_NAME_LANG_ID,
128
- HB_SUBSET_SETS_LAYOUT_FEATURE_TAG,
129
- HB_SUBSET_SETS_LAYOUT_SCRIPT_TAG,
130
- } hb_subset_sets_t;
131
-
132
- HB_EXTERN hb_subset_input_t *
133
- hb_subset_input_create_or_fail (void);
134
-
135
- HB_EXTERN hb_subset_input_t *
136
- hb_subset_input_reference (hb_subset_input_t *input);
137
-
138
- HB_EXTERN void
139
- hb_subset_input_destroy (hb_subset_input_t *input);
140
-
141
- HB_EXTERN hb_bool_t
142
- hb_subset_input_set_user_data (hb_subset_input_t *input,
143
- hb_user_data_key_t *key,
144
- void * data,
145
- hb_destroy_func_t destroy,
146
- hb_bool_t replace);
147
-
148
- HB_EXTERN void *
149
- hb_subset_input_get_user_data (const hb_subset_input_t *input,
150
- hb_user_data_key_t *key);
151
-
152
- HB_EXTERN hb_set_t *
153
- hb_subset_input_unicode_set (hb_subset_input_t *input);
154
-
155
- HB_EXTERN hb_set_t *
156
- hb_subset_input_glyph_set (hb_subset_input_t *input);
157
-
158
- HB_EXTERN hb_set_t *
159
- hb_subset_input_set (hb_subset_input_t *input, hb_subset_sets_t set_type);
160
-
161
- HB_EXTERN hb_subset_flags_t
162
- hb_subset_input_get_flags (hb_subset_input_t *input);
163
-
164
- HB_EXTERN void
165
- hb_subset_input_set_flags (hb_subset_input_t *input,
166
- unsigned value);
167
-
168
- HB_EXTERN hb_bool_t
169
- hb_subset_input_pin_axis_to_default (hb_subset_input_t *input,
170
- hb_face_t *face,
171
- hb_tag_t axis_tag);
172
-
173
- HB_EXTERN hb_bool_t
174
- hb_subset_input_pin_axis_location (hb_subset_input_t *input,
175
- hb_face_t *face,
176
- hb_tag_t axis_tag,
177
- float axis_value);
178
-
179
- #ifdef HB_EXPERIMENTAL_API
180
- HB_EXTERN hb_bool_t
181
- hb_subset_input_override_name_table (hb_subset_input_t *input,
182
- hb_ot_name_id_t name_id,
183
- unsigned platform_id,
184
- unsigned encoding_id,
185
- unsigned language_id,
186
- const char *name_str,
187
- int str_len);
188
-
189
- #endif
190
-
191
- HB_EXTERN hb_face_t *
192
- hb_subset_preprocess (hb_face_t *source);
193
-
194
- HB_EXTERN hb_face_t *
195
- hb_subset_or_fail (hb_face_t *source, const hb_subset_input_t *input);
196
-
197
- HB_EXTERN hb_face_t *
198
- hb_subset_plan_execute_or_fail (hb_subset_plan_t *plan);
199
-
200
- HB_EXTERN hb_subset_plan_t *
201
- hb_subset_plan_create_or_fail (hb_face_t *face,
202
- const hb_subset_input_t *input);
203
-
204
- HB_EXTERN void
205
- hb_subset_plan_destroy (hb_subset_plan_t *plan);
206
-
207
- HB_EXTERN const hb_map_t*
208
- hb_subset_plan_old_to_new_glyph_mapping (const hb_subset_plan_t *plan);
209
-
210
- HB_EXTERN const hb_map_t*
211
- hb_subset_plan_new_to_old_glyph_mapping (const hb_subset_plan_t *plan);
212
-
213
- HB_EXTERN const hb_map_t*
214
- hb_subset_plan_unicode_to_old_glyph_mapping (const hb_subset_plan_t *plan);
215
-
216
-
217
- HB_EXTERN hb_subset_plan_t *
218
- hb_subset_plan_reference (hb_subset_plan_t *plan);
219
-
220
- HB_EXTERN hb_bool_t
221
- hb_subset_plan_set_user_data (hb_subset_plan_t *plan,
222
- hb_user_data_key_t *key,
223
- void *data,
224
- hb_destroy_func_t destroy,
225
- hb_bool_t replace);
226
-
227
- HB_EXTERN void *
228
- hb_subset_plan_get_user_data (const hb_subset_plan_t *plan,
229
- hb_user_data_key_t *key);
230
-
231
-
232
- HB_END_DECLS
233
-
234
- #endif /* HB_SUBSET_H */