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.
- package/dist/jassub-worker.js +6 -6
- package/package.json +4 -2
- package/dist/js/jassub-worker-modern.js +0 -128
- package/dist/js/jassub-worker-modern.wasm +0 -0
- package/dist/js/jassub-worker.js +0 -128
- package/dist/js/jassub-worker.wasm +0 -0
- package/dist/js/jassub-worker.wasm.js +0 -84
- package/dist/js/jassub.js +0 -832
- package/dist/libraries/bin/brotli.js +0 -1
- package/dist/libraries/include/ass/ass.h +0 -812
- package/dist/libraries/include/ass/ass_types.h +0 -292
- package/dist/libraries/include/brotli/decode.h +0 -344
- package/dist/libraries/include/brotli/encode.h +0 -448
- package/dist/libraries/include/brotli/port.h +0 -288
- package/dist/libraries/include/brotli/types.h +0 -83
- package/dist/libraries/include/expat.h +0 -1064
- package/dist/libraries/include/expat_config.h +0 -115
- package/dist/libraries/include/expat_external.h +0 -165
- package/dist/libraries/include/fontconfig/fcfreetype.h +0 -59
- package/dist/libraries/include/fontconfig/fcprivate.h +0 -134
- package/dist/libraries/include/fontconfig/fontconfig.h +0 -1154
- package/dist/libraries/include/freetype2/freetype/config/ftconfig.h +0 -63
- package/dist/libraries/include/freetype2/freetype/config/ftheader.h +0 -824
- package/dist/libraries/include/freetype2/freetype/config/ftmodule.h +0 -20
- package/dist/libraries/include/freetype2/freetype/config/ftoption.h +0 -1011
- package/dist/libraries/include/freetype2/freetype/config/ftstdlib.h +0 -175
- package/dist/libraries/include/freetype2/freetype/config/integer-types.h +0 -245
- package/dist/libraries/include/freetype2/freetype/config/mac-support.h +0 -49
- package/dist/libraries/include/freetype2/freetype/config/public-macros.h +0 -120
- package/dist/libraries/include/freetype2/freetype/freetype.h +0 -4833
- package/dist/libraries/include/freetype2/freetype/ftadvanc.h +0 -188
- package/dist/libraries/include/freetype2/freetype/ftbbox.h +0 -101
- package/dist/libraries/include/freetype2/freetype/ftbdf.h +0 -212
- package/dist/libraries/include/freetype2/freetype/ftbitmap.h +0 -329
- package/dist/libraries/include/freetype2/freetype/ftbzip2.h +0 -102
- package/dist/libraries/include/freetype2/freetype/ftcache.h +0 -1087
- package/dist/libraries/include/freetype2/freetype/ftchapters.h +0 -147
- package/dist/libraries/include/freetype2/freetype/ftcid.h +0 -167
- package/dist/libraries/include/freetype2/freetype/ftcolor.h +0 -1609
- package/dist/libraries/include/freetype2/freetype/ftdriver.h +0 -1193
- package/dist/libraries/include/freetype2/freetype/fterrdef.h +0 -279
- package/dist/libraries/include/freetype2/freetype/fterrors.h +0 -296
- package/dist/libraries/include/freetype2/freetype/ftfntfmt.h +0 -93
- package/dist/libraries/include/freetype2/freetype/ftgasp.h +0 -143
- package/dist/libraries/include/freetype2/freetype/ftglyph.h +0 -664
- package/dist/libraries/include/freetype2/freetype/ftgxval.h +0 -354
- package/dist/libraries/include/freetype2/freetype/ftgzip.h +0 -151
- package/dist/libraries/include/freetype2/freetype/ftimage.h +0 -1276
- package/dist/libraries/include/freetype2/freetype/ftincrem.h +0 -348
- package/dist/libraries/include/freetype2/freetype/ftlcdfil.h +0 -323
- package/dist/libraries/include/freetype2/freetype/ftlist.h +0 -296
- package/dist/libraries/include/freetype2/freetype/ftlogging.h +0 -184
- package/dist/libraries/include/freetype2/freetype/ftlzw.h +0 -100
- package/dist/libraries/include/freetype2/freetype/ftmac.h +0 -289
- package/dist/libraries/include/freetype2/freetype/ftmm.h +0 -752
- package/dist/libraries/include/freetype2/freetype/ftmodapi.h +0 -806
- package/dist/libraries/include/freetype2/freetype/ftmoderr.h +0 -204
- package/dist/libraries/include/freetype2/freetype/ftotval.h +0 -206
- package/dist/libraries/include/freetype2/freetype/ftoutln.h +0 -586
- package/dist/libraries/include/freetype2/freetype/ftparams.h +0 -203
- package/dist/libraries/include/freetype2/freetype/ftpfr.h +0 -179
- package/dist/libraries/include/freetype2/freetype/ftrender.h +0 -244
- package/dist/libraries/include/freetype2/freetype/ftsizes.h +0 -159
- package/dist/libraries/include/freetype2/freetype/ftsnames.h +0 -272
- package/dist/libraries/include/freetype2/freetype/ftstroke.h +0 -773
- package/dist/libraries/include/freetype2/freetype/ftsynth.h +0 -83
- package/dist/libraries/include/freetype2/freetype/ftsystem.h +0 -352
- package/dist/libraries/include/freetype2/freetype/fttrigon.h +0 -350
- package/dist/libraries/include/freetype2/freetype/fttypes.h +0 -615
- package/dist/libraries/include/freetype2/freetype/ftwinfnt.h +0 -276
- package/dist/libraries/include/freetype2/freetype/t1tables.h +0 -773
- package/dist/libraries/include/freetype2/freetype/ttnameid.h +0 -1235
- package/dist/libraries/include/freetype2/freetype/tttables.h +0 -855
- package/dist/libraries/include/freetype2/freetype/tttags.h +0 -123
- package/dist/libraries/include/freetype2/ft2build.h +0 -42
- package/dist/libraries/include/fribidi/fribidi-arabic.h +0 -81
- package/dist/libraries/include/fribidi/fribidi-begindecls.h +0 -3
- package/dist/libraries/include/fribidi/fribidi-bidi-types-list.h +0 -96
- package/dist/libraries/include/fribidi/fribidi-bidi-types.h +0 -405
- package/dist/libraries/include/fribidi/fribidi-bidi.h +0 -142
- package/dist/libraries/include/fribidi/fribidi-brackets.h +0 -89
- package/dist/libraries/include/fribidi/fribidi-char-sets-list.h +0 -54
- package/dist/libraries/include/fribidi/fribidi-char-sets.h +0 -106
- package/dist/libraries/include/fribidi/fribidi-common.h +0 -158
- package/dist/libraries/include/fribidi/fribidi-config.h +0 -23
- package/dist/libraries/include/fribidi/fribidi-deprecated.h +0 -175
- package/dist/libraries/include/fribidi/fribidi-enddecls.h +0 -3
- package/dist/libraries/include/fribidi/fribidi-flags.h +0 -72
- package/dist/libraries/include/fribidi/fribidi-joining-types-list.h +0 -44
- package/dist/libraries/include/fribidi/fribidi-joining-types.h +0 -249
- package/dist/libraries/include/fribidi/fribidi-joining.h +0 -74
- package/dist/libraries/include/fribidi/fribidi-mirroring.h +0 -86
- package/dist/libraries/include/fribidi/fribidi-shape.h +0 -71
- package/dist/libraries/include/fribidi/fribidi-types.h +0 -79
- package/dist/libraries/include/fribidi/fribidi-unicode-version.h +0 -10
- package/dist/libraries/include/fribidi/fribidi-unicode.h +0 -105
- package/dist/libraries/include/fribidi/fribidi.h +0 -129
- package/dist/libraries/include/harfbuzz/hb-aat-layout.h +0 -795
- package/dist/libraries/include/harfbuzz/hb-aat.h +0 -38
- package/dist/libraries/include/harfbuzz/hb-blob.h +0 -160
- package/dist/libraries/include/harfbuzz/hb-buffer.h +0 -799
- package/dist/libraries/include/harfbuzz/hb-common.h +0 -902
- package/dist/libraries/include/harfbuzz/hb-cplusplus.hh +0 -221
- package/dist/libraries/include/harfbuzz/hb-deprecated.h +0 -251
- package/dist/libraries/include/harfbuzz/hb-draw.h +0 -325
- package/dist/libraries/include/harfbuzz/hb-face.h +0 -181
- package/dist/libraries/include/harfbuzz/hb-font.h +0 -1108
- package/dist/libraries/include/harfbuzz/hb-ft.h +0 -145
- package/dist/libraries/include/harfbuzz/hb-map.h +0 -124
- package/dist/libraries/include/harfbuzz/hb-ot-color.h +0 -146
- package/dist/libraries/include/harfbuzz/hb-ot-deprecated.h +0 -141
- package/dist/libraries/include/harfbuzz/hb-ot-font.h +0 -45
- package/dist/libraries/include/harfbuzz/hb-ot-layout.h +0 -503
- package/dist/libraries/include/harfbuzz/hb-ot-math.h +0 -333
- package/dist/libraries/include/harfbuzz/hb-ot-meta.h +0 -72
- package/dist/libraries/include/harfbuzz/hb-ot-metrics.h +0 -129
- package/dist/libraries/include/harfbuzz/hb-ot-name.h +0 -158
- package/dist/libraries/include/harfbuzz/hb-ot-shape.h +0 -53
- package/dist/libraries/include/harfbuzz/hb-ot-var.h +0 -191
- package/dist/libraries/include/harfbuzz/hb-ot.h +0 -49
- package/dist/libraries/include/harfbuzz/hb-set.h +0 -200
- package/dist/libraries/include/harfbuzz/hb-shape-plan.h +0 -122
- package/dist/libraries/include/harfbuzz/hb-shape.h +0 -62
- package/dist/libraries/include/harfbuzz/hb-style.h +0 -81
- package/dist/libraries/include/harfbuzz/hb-subset-repacker.h +0 -81
- package/dist/libraries/include/harfbuzz/hb-subset.h +0 -234
- package/dist/libraries/include/harfbuzz/hb-unicode.h +0 -643
- package/dist/libraries/include/harfbuzz/hb-version.h +0 -95
- package/dist/libraries/include/harfbuzz/hb.h +0 -50
- package/dist/libraries/lib/cmake/expat-2.4.7/expat-config-version.cmake +0 -70
- package/dist/libraries/lib/cmake/expat-2.4.7/expat-config.cmake +0 -99
- package/dist/libraries/lib/cmake/expat-2.4.7/expat-noconfig.cmake +0 -19
- package/dist/libraries/lib/cmake/expat-2.4.7/expat.cmake +0 -99
- package/dist/libraries/lib/libass.a +0 -0
- package/dist/libraries/lib/libass.la +0 -41
- package/dist/libraries/lib/libbrotlicommon.a +0 -0
- package/dist/libraries/lib/libbrotlidec.a +0 -0
- package/dist/libraries/lib/libbrotlienc.a +0 -0
- package/dist/libraries/lib/libexpat.a +0 -0
- package/dist/libraries/lib/libfontconfig.a +0 -0
- package/dist/libraries/lib/libfontconfig.la +0 -41
- package/dist/libraries/lib/libfreetype.a +0 -0
- package/dist/libraries/lib/libfreetype.la +0 -41
- package/dist/libraries/lib/libfribidi.a +0 -0
- package/dist/libraries/lib/libfribidi.la +0 -41
- package/dist/libraries/lib/libharfbuzz-subset.a +0 -0
- package/dist/libraries/lib/libharfbuzz-subset.la +0 -41
- package/dist/libraries/lib/libharfbuzz.a +0 -0
- package/dist/libraries/lib/libharfbuzz.la +0 -41
- package/dist/libraries/lib/pkgconfig/expat.pc +0 -11
- package/dist/libraries/lib/pkgconfig/fontconfig.pc +0 -18
- package/dist/libraries/lib/pkgconfig/freetype2.pc +0 -14
- package/dist/libraries/lib/pkgconfig/fribidi.pc +0 -13
- package/dist/libraries/lib/pkgconfig/harfbuzz-subset.pc +0 -12
- package/dist/libraries/lib/pkgconfig/harfbuzz.pc +0 -13
- package/dist/libraries/lib/pkgconfig/libass.pc +0 -13
- package/dist/libraries/lib/pkgconfig/libbrotlicommon.pc +0 -11
- package/dist/libraries/lib/pkgconfig/libbrotlidec.pc +0 -12
- package/dist/libraries/lib/pkgconfig/libbrotlienc.pc +0 -12
- package/dist/libraries/share/aclocal/freetype2.m4 +0 -194
- package/dist/libraries/share/doc/expat/AUTHORS +0 -10
- package/dist/libraries/share/doc/expat/changelog +0 -1161
- package/dist/license/all +0 -951
- package/dist/license/all.tmp +0 -307
- package/dist/license/brotli +0 -12
- package/dist/license/expat +0 -71
- package/dist/license/fontconfig +0 -46
- package/dist/license/freetype +0 -92
- package/dist/license/fribidi +0 -15
- package/dist/license/harfbuzz +0 -32
- package/dist/license/jassub +0 -0
- 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 */
|