@img/sharp-libvips-dev 1.3.0-rc.1 → 1.3.0-rc.3

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 (98) hide show
  1. package/include/archive.h +2 -2
  2. package/include/archive_entry.h +1 -1
  3. package/include/expat.h +2 -2
  4. package/include/expat_config.h +3 -6
  5. package/include/expat_external.h +2 -3
  6. package/include/freetype2/freetype/config/ftoption.h +7 -1
  7. package/include/freetype2/freetype/config/mac-support.h +2 -0
  8. package/include/freetype2/freetype/freetype.h +8 -17
  9. package/include/freetype2/freetype/ftbdf.h +9 -3
  10. package/include/freetype2/freetype/ftimage.h +1 -1
  11. package/include/freetype2/freetype/ftlcdfil.h +2 -8
  12. package/include/freetype2/freetype/ftparams.h +2 -5
  13. package/include/freetype2/freetype/t1tables.h +2 -2
  14. package/include/glib-2.0/gio/gfileattribute.h +1 -1
  15. package/include/glib-2.0/gio/gfileinfo.h +5 -0
  16. package/include/glib-2.0/gio/gicon.h +1 -1
  17. package/include/glib-2.0/gio/gio-autocleanups.h +0 -1
  18. package/include/glib-2.0/gio/gio.h +2 -0
  19. package/include/glib-2.0/gio/gioenums.h +61 -40
  20. package/include/glib-2.0/gio/gioenumtypes.h +2 -0
  21. package/include/glib-2.0/gio/giptosmessage.h +46 -0
  22. package/include/glib-2.0/gio/gipv6tclassmessage.h +46 -0
  23. package/include/glib-2.0/gio/gresolver.h +1 -1
  24. package/include/glib-2.0/gio/gsettings.h +1 -1
  25. package/include/glib-2.0/gio/gsocketcontrolmessage.h +2 -0
  26. package/include/glib-2.0/girepository/girepository.h +1 -1
  27. package/include/glib-2.0/girepository/girffi.h +2 -2
  28. package/include/glib-2.0/girepository/gitypes.h +3 -3
  29. package/include/glib-2.0/glib/gatomic.h +26 -2
  30. package/include/glib-2.0/glib/gfileutils.h +2 -2
  31. package/include/glib-2.0/glib/ghook.h +3 -1
  32. package/include/glib-2.0/glib/giochannel.h +1 -1
  33. package/include/glib-2.0/glib/gkeyfile.h +1 -1
  34. package/include/glib-2.0/glib/gmacros.h +32 -0
  35. package/include/glib-2.0/glib/gmain.h +4 -0
  36. package/include/glib-2.0/glib/gmarkup.h +8 -1
  37. package/include/glib-2.0/glib/gmessages.h +1 -1
  38. package/include/glib-2.0/glib/gnode.h +1 -1
  39. package/include/glib-2.0/glib/goption.h +1 -1
  40. package/include/glib-2.0/glib/gslice.h +12 -4
  41. package/include/glib-2.0/glib/gspawn.h +1 -1
  42. package/include/glib-2.0/glib/gstrfuncs.h +1 -1
  43. package/include/glib-2.0/glib/gtestutils.h +6 -3
  44. package/include/glib-2.0/glib/gtimer.h +1 -0
  45. package/include/glib-2.0/glib/guri.h +3 -3
  46. package/include/glib-2.0/glib/gutils.h +1 -1
  47. package/include/glib-2.0/gmodule.h +1 -1
  48. package/include/glib-2.0/gobject/gbinding.h +1 -1
  49. package/include/glib-2.0/gobject/gobject.h +1 -1
  50. package/include/glib-2.0/gobject/gparam.h +1 -1
  51. package/include/glib-2.0/gobject/gsignal.h +3 -3
  52. package/include/glib-2.0/gobject/gtype.h +3 -3
  53. package/include/harfbuzz/hb-buffer.h +11 -3
  54. package/include/harfbuzz/hb-cplusplus.hh +31 -27
  55. package/include/harfbuzz/hb-features.h +21 -0
  56. package/include/harfbuzz/hb-ot-color.h +14 -0
  57. package/include/harfbuzz/hb-ot-shape.h +15 -0
  58. package/include/harfbuzz/hb-paint.h +19 -18
  59. package/include/harfbuzz/hb-version.h +2 -2
  60. package/include/lcms2.h +3 -3
  61. package/include/lcms2_plugin.h +1 -1
  62. package/include/libheif/heif_brands.h +3 -0
  63. package/include/libheif/heif_color.h +6 -0
  64. package/include/libheif/heif_cxx.h +10 -8
  65. package/include/libheif/heif_decoding.h +10 -0
  66. package/include/libheif/heif_encoding.h +6 -2
  67. package/include/libheif/heif_error.h +2 -0
  68. package/include/libheif/heif_image.h +4 -1
  69. package/include/libheif/heif_image_handle.h +10 -1
  70. package/include/libheif/heif_items.h +24 -1
  71. package/include/libheif/heif_library.h +3 -0
  72. package/include/libheif/heif_metadata.h +3 -0
  73. package/include/libheif/heif_plugin.h +63 -3
  74. package/include/libheif/heif_properties.h +5 -1
  75. package/include/libheif/heif_regions.h +3 -1
  76. package/include/libheif/heif_security.h +5 -0
  77. package/include/libheif/heif_sequences.h +71 -4
  78. package/include/libheif/heif_text.h +161 -0
  79. package/include/libheif/heif_version.h +2 -2
  80. package/include/libpng16/png.h +636 -487
  81. package/include/libpng16/pngconf.h +2 -2
  82. package/include/libpng16/pnglibconf.h +2 -2
  83. package/include/librsvg-2.0/librsvg/rsvg-version.h +3 -3
  84. package/include/librsvg-2.0/librsvg/rsvg.h +4 -4
  85. package/include/libxml2/libxml/catalog.h +2 -0
  86. package/include/libxml2/libxml/relaxng.h +4 -0
  87. package/include/libxml2/libxml/xmlversion.h +4 -4
  88. package/include/png.h +636 -487
  89. package/include/pngconf.h +2 -2
  90. package/include/pnglibconf.h +2 -2
  91. package/include/vips/colour.h +2 -2
  92. package/include/vips/memory.h +1 -1
  93. package/include/vips/version.h +4 -4
  94. package/include/zlib.h +3 -3
  95. package/package.json +1 -1
  96. package/versions.json +14 -14
  97. package/include/harfbuzz/hb-subset-serialize.h +0 -83
  98. package/include/harfbuzz/hb-subset.h +0 -297
package/include/pngconf.h CHANGED
@@ -1,8 +1,8 @@
1
1
  /* pngconf.h - machine-configurable file for libpng
2
2
  *
3
- * libpng version 1.6.53
3
+ * libpng version 1.6.55
4
4
  *
5
- * Copyright (c) 2018-2025 Cosmin Truta
5
+ * Copyright (c) 2018-2026 Cosmin Truta
6
6
  * Copyright (c) 1998-2002,2004,2006-2016,2018 Glenn Randers-Pehrson
7
7
  * Copyright (c) 1996-1997 Andreas Dilger
8
8
  * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
@@ -1,8 +1,8 @@
1
1
  /* pnglibconf.h - library build configuration */
2
2
 
3
- /* libpng version 1.6.53 */
3
+ /* libpng version 1.6.55 */
4
4
 
5
- /* Copyright (c) 2018-2025 Cosmin Truta */
5
+ /* Copyright (c) 2018-2026 Cosmin Truta */
6
6
  /* Copyright (c) 1998-2002,2004,2006-2018 Glenn Randers-Pehrson */
7
7
 
8
8
  /* This code is released under the libpng license. */
@@ -217,8 +217,8 @@ int vips_Oklab2Oklch(VipsImage *in, VipsImage **out, ...)
217
217
  G_GNUC_NULL_TERMINATED;
218
218
 
219
219
  VIPS_API
220
- int vips_uhdr2scRGB(VipsImage *in, VipsImage **out, ...);
221
- G_GNUC_NULL_TERMINATED
220
+ int vips_uhdr2scRGB(VipsImage *in, VipsImage **out, ...)
221
+ G_GNUC_NULL_TERMINATED;
222
222
 
223
223
  VIPS_API
224
224
  int vips_profile_load(const char *name, VipsBlob **profile, ...)
@@ -41,7 +41,7 @@ extern "C" {
41
41
  G_STMT_START \
42
42
  { \
43
43
  if (S) { \
44
- (void) F((S)); \
44
+ (void) (F((S))); \
45
45
  (S) = 0; \
46
46
  } \
47
47
  } \
@@ -4,16 +4,16 @@
4
4
  #ifndef VIPS_VERSION_H
5
5
  #define VIPS_VERSION_H
6
6
 
7
- #define VIPS_VERSION "8.18.0"
8
- #define VIPS_VERSION_STRING "8.18.0"
7
+ #define VIPS_VERSION "8.18.1"
8
+ #define VIPS_VERSION_STRING "8.18.1"
9
9
  #define VIPS_MAJOR_VERSION (8)
10
10
  #define VIPS_MINOR_VERSION (18)
11
- #define VIPS_MICRO_VERSION (0)
11
+ #define VIPS_MICRO_VERSION (1)
12
12
 
13
13
  /* The ABI version, as used for library versioning.
14
14
  */
15
15
  #define VIPS_LIBRARY_CURRENT (62)
16
- #define VIPS_LIBRARY_REVISION (0)
16
+ #define VIPS_LIBRARY_REVISION (1)
17
17
  #define VIPS_LIBRARY_AGE (20)
18
18
 
19
19
  #define VIPS_CONFIG "enable debug: false\nenable deprecated: false\nenable modules: false\nenable C++ binding: true\nenable RAD load/save: false\nenable Analyze7 load: false\nenable PPM load/save: false\nenable GIF load: true\nFFTs with fftw: false\nSIMD support with libhwy: true\nICC profile support with lcms2: true\ndeflate compression with zlib: true\ntext rendering with pangocairo: true\nfont file support with fontconfig: true\nEXIF metadata support with libexif: true\nJPEG load/save with libjpeg: true\nUHDR load/save with libuhdr: true\nJXL load/save with libjxl: false (dynamic module: false)\nJPEG2000 load/save with OpenJPEG: false\nPNG load/save with libpng: true\nimage quantisation with imagequant: true\nTIFF load/save with libtiff-4: true\nimage pyramid save with libarchive: true\nHEIC/AVIF load/save with libheif: true (dynamic module: false)\nWebP load/save with libwebp: true\nPDF load with PDFium or Poppler: false (dynamic module: false)\nSVG load with librsvg-2.0: true\nEXR load with OpenEXR: false\nWSI load with OpenSlide: false (dynamic module: false)\nMatlab load with Matio: false\nNIfTI load/save with libnifti: false\nFITS load/save with cfitsio: false\nGIF save with cgif: true\nRAW load with libraw: false\nMagick load/save with MagickCore: false (dynamic module: false)"
package/include/zlib.h CHANGED
@@ -49,11 +49,11 @@
49
49
  extern "C" {
50
50
  #endif
51
51
 
52
- #define ZLIBNG_VERSION "2.3.2"
53
- #define ZLIBNG_VERNUM 0x020302F0L /* MMNNRRSM: major minor revision status modified */
52
+ #define ZLIBNG_VERSION "2.3.3"
53
+ #define ZLIBNG_VERNUM 0x020303F0L /* MMNNRRSM: major minor revision status modified */
54
54
  #define ZLIBNG_VER_MAJOR 2
55
55
  #define ZLIBNG_VER_MINOR 3
56
- #define ZLIBNG_VER_REVISION 2
56
+ #define ZLIBNG_VER_REVISION 3
57
57
  #define ZLIBNG_VER_STATUS F /* 0=devel, 1-E=beta, F=Release (DEPRECATED) */
58
58
  #define ZLIBNG_VER_STATUSH 0xF /* Hex values: 0=devel, 1-9=beta, A-E=Release Candidate, F=Release */
59
59
  #define ZLIBNG_VER_MODIFIED 0 /* non-zero if modified externally from zlib-ng */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@img/sharp-libvips-dev",
3
- "version": "1.3.0-rc.1",
3
+ "version": "1.3.0-rc.3",
4
4
  "description": "Header files and C++ sources for libvips and dependencies required when compiling sharp from source",
5
5
  "author": "Lovell Fuller <npm@lovell.info>",
6
6
  "homepage": "https://sharp.pixelplumbing.com",
package/versions.json CHANGED
@@ -1,30 +1,30 @@
1
1
  {
2
2
  "aom": "3.13.1",
3
- "archive": "3.8.4",
3
+ "archive": "3.8.6",
4
4
  "cairo": "1.18.4",
5
- "cgif": "0.5.0",
5
+ "cgif": "0.5.2",
6
6
  "exif": "0.6.25",
7
- "expat": "2.7.3",
7
+ "expat": "2.7.5",
8
8
  "ffi": "3.5.2",
9
9
  "fontconfig": "2.17.1",
10
- "freetype": "2.14.1",
10
+ "freetype": "2.14.2",
11
11
  "fribidi": "1.0.16",
12
- "glib": "2.87.0",
13
- "harfbuzz": "12.2.0",
14
- "heif": "1.20.2",
12
+ "glib": "2.88.0",
13
+ "harfbuzz": "13.2.0",
14
+ "heif": "1.21.2",
15
15
  "highway": "1.3.0",
16
16
  "imagequant": "2.4.1",
17
- "lcms": "2.17",
17
+ "lcms": "2.18",
18
18
  "mozjpeg": "0826579",
19
19
  "pango": "1.57.0",
20
20
  "pixman": "0.46.4",
21
- "png": "1.6.53",
21
+ "png": "1.6.55",
22
22
  "proxy-libintl": "0.5",
23
- "rsvg": "2.61.3",
23
+ "rsvg": "2.62.1",
24
24
  "tiff": "4.7.1",
25
- "uhdr": "1.4.0",
26
- "vips": "8.18.0-rc2",
25
+ "uhdr": "8cbc983",
26
+ "vips": "8.18.1",
27
27
  "webp": "1.6.0",
28
- "xml2": "2.15.1",
29
- "zlib-ng": "2.3.2"
28
+ "xml2": "2.15.2",
29
+ "zlib-ng": "2.3.3"
30
30
  }
@@ -1,83 +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_SERIALIZE_H
27
- #define HB_SUBSET_SERIALIZE_H
28
-
29
- #include "hb.h"
30
-
31
- HB_BEGIN_DECLS
32
-
33
- /**
34
- * hb_subset_serialize_link_t:
35
- * @width: offsetSize in bytes
36
- * @position: position of the offset field in bytes from
37
- * beginning of subtable
38
- * @objidx: index of subtable
39
- *
40
- * Represents a link between two objects in the object graph
41
- * to be serialized.
42
- *
43
- * Since: 10.2.0
44
- */
45
- typedef struct hb_subset_serialize_link_t {
46
- unsigned int width;
47
- unsigned int position;
48
- unsigned int objidx;
49
- } hb_subset_serialize_link_t;
50
-
51
- /**
52
- * hb_subset_serialize_object_t:
53
- * @head: start of object data
54
- * @tail: end of object data
55
- * @num_real_links: number of offset field in the object
56
- * @real_links: array of offset info
57
- * @num_virtual_links: number of objects that must be packed
58
- * after current object in the final
59
- * serialized order
60
- * @virtual_links: array of virtual link info
61
- *
62
- * Represents an object in the object graph to be serialized.
63
- *
64
- * Since: 10.2.0
65
- */
66
- typedef struct hb_subset_serialize_object_t {
67
- char *head;
68
- char *tail;
69
- unsigned int num_real_links;
70
- hb_subset_serialize_link_t *real_links;
71
- unsigned int num_virtual_links;
72
- hb_subset_serialize_link_t *virtual_links;
73
- } hb_subset_serialize_object_t;
74
-
75
- HB_EXTERN hb_blob_t *
76
- hb_subset_serialize_or_fail (hb_tag_t table_tag,
77
- hb_subset_serialize_object_t *hb_objects,
78
- unsigned num_hb_objs);
79
-
80
-
81
- HB_END_DECLS
82
-
83
- #endif /* HB_SUBSET_SERIALIZE_H */
@@ -1,297 +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_NO_LAYOUT_CLOSURE: If set do not perform glyph closure on layout
75
- * substitution rules (GSUB). Since: 7.2.0.
76
- * @HB_SUBSET_FLAGS_OPTIMIZE_IUP_DELTAS: If set perform IUP delta optimization on the
77
- * remaining gvar table's deltas. Since: 8.5.0
78
- * @HB_SUBSET_FLAGS_NO_BIDI_CLOSURE: If set do not pull mirrored versions of input
79
- * codepoints into the subset. Since: 11.1.0
80
- * @HB_SUBSET_FLAGS_IFTB_REQUIREMENTS: If set enforce requirements on the output subset
81
- * to allow it to be used with incremental font transfer IFTB patches. Primarily,
82
- * this forces all outline data to use long (32 bit) offsets. Since: EXPERIMENTAL
83
- * @HB_SUBSET_FLAGS_RETAIN_NUM_GLYPHS: If this flag is set along side
84
- * HB_SUBSET_FLAGS_RETAIN_GIDS then the number of glyphs in the font won't
85
- * be reduced as a result of subsetting. If necessary empty glyphs will be
86
- * included at the end of the font to keep the number of glyphs unchanged.
87
- *
88
- * List of boolean properties that can be configured on the subset input.
89
- *
90
- * Since: 2.9.0
91
- **/
92
- typedef enum { /*< flags >*/
93
- HB_SUBSET_FLAGS_DEFAULT = 0x00000000u,
94
- HB_SUBSET_FLAGS_NO_HINTING = 0x00000001u,
95
- HB_SUBSET_FLAGS_RETAIN_GIDS = 0x00000002u,
96
- HB_SUBSET_FLAGS_DESUBROUTINIZE = 0x00000004u,
97
- HB_SUBSET_FLAGS_NAME_LEGACY = 0x00000008u,
98
- HB_SUBSET_FLAGS_SET_OVERLAPS_FLAG = 0x00000010u,
99
- HB_SUBSET_FLAGS_PASSTHROUGH_UNRECOGNIZED = 0x00000020u,
100
- HB_SUBSET_FLAGS_NOTDEF_OUTLINE = 0x00000040u,
101
- HB_SUBSET_FLAGS_GLYPH_NAMES = 0x00000080u,
102
- HB_SUBSET_FLAGS_NO_PRUNE_UNICODE_RANGES = 0x00000100u,
103
- HB_SUBSET_FLAGS_NO_LAYOUT_CLOSURE = 0x00000200u,
104
- HB_SUBSET_FLAGS_OPTIMIZE_IUP_DELTAS = 0x00000400u,
105
- HB_SUBSET_FLAGS_NO_BIDI_CLOSURE = 0x00000800u,
106
- #ifdef HB_EXPERIMENTAL_API
107
- HB_SUBSET_FLAGS_IFTB_REQUIREMENTS = 0x00001000u,
108
- HB_SUBSET_FLAGS_RETAIN_NUM_GLYPHS = 0x00002000u,
109
- #endif
110
- } hb_subset_flags_t;
111
-
112
- /**
113
- * hb_subset_sets_t:
114
- * @HB_SUBSET_SETS_GLYPH_INDEX: the set of glyph indexes to retain in the subset.
115
- * @HB_SUBSET_SETS_UNICODE: the set of unicode codepoints to retain in the subset.
116
- * @HB_SUBSET_SETS_NO_SUBSET_TABLE_TAG: the set of table tags which specifies tables that should not be
117
- * subsetted.
118
- * @HB_SUBSET_SETS_DROP_TABLE_TAG: the set of table tags which specifies tables which will be dropped
119
- * in the subset.
120
- * @HB_SUBSET_SETS_NAME_ID: the set of name ids that will be retained.
121
- * @HB_SUBSET_SETS_NAME_LANG_ID: the set of name lang ids that will be retained.
122
- * @HB_SUBSET_SETS_LAYOUT_FEATURE_TAG: the set of layout feature tags that will be retained
123
- * in the subset.
124
- * @HB_SUBSET_SETS_LAYOUT_SCRIPT_TAG: the set of layout script tags that will be retained
125
- * in the subset. Defaults to all tags. Since: 5.0.0
126
- *
127
- * List of sets that can be configured on the subset input.
128
- *
129
- * Since: 2.9.1
130
- **/
131
- typedef enum {
132
- HB_SUBSET_SETS_GLYPH_INDEX = 0,
133
- HB_SUBSET_SETS_UNICODE,
134
- HB_SUBSET_SETS_NO_SUBSET_TABLE_TAG,
135
- HB_SUBSET_SETS_DROP_TABLE_TAG,
136
- HB_SUBSET_SETS_NAME_ID,
137
- HB_SUBSET_SETS_NAME_LANG_ID,
138
- HB_SUBSET_SETS_LAYOUT_FEATURE_TAG,
139
- HB_SUBSET_SETS_LAYOUT_SCRIPT_TAG,
140
- } hb_subset_sets_t;
141
-
142
- HB_EXTERN hb_subset_input_t *
143
- hb_subset_input_create_or_fail (void);
144
-
145
- HB_EXTERN hb_subset_input_t *
146
- hb_subset_input_reference (hb_subset_input_t *input);
147
-
148
- HB_EXTERN void
149
- hb_subset_input_destroy (hb_subset_input_t *input);
150
-
151
- HB_EXTERN hb_bool_t
152
- hb_subset_input_set_user_data (hb_subset_input_t *input,
153
- hb_user_data_key_t *key,
154
- void * data,
155
- hb_destroy_func_t destroy,
156
- hb_bool_t replace);
157
-
158
- HB_EXTERN void *
159
- hb_subset_input_get_user_data (const hb_subset_input_t *input,
160
- hb_user_data_key_t *key);
161
-
162
- HB_EXTERN void
163
- hb_subset_input_keep_everything (hb_subset_input_t *input);
164
-
165
- HB_EXTERN hb_set_t *
166
- hb_subset_input_unicode_set (hb_subset_input_t *input);
167
-
168
- HB_EXTERN hb_set_t *
169
- hb_subset_input_glyph_set (hb_subset_input_t *input);
170
-
171
- HB_EXTERN hb_set_t *
172
- hb_subset_input_set (hb_subset_input_t *input, hb_subset_sets_t set_type);
173
-
174
- HB_EXTERN hb_map_t*
175
- hb_subset_input_old_to_new_glyph_mapping (hb_subset_input_t *input);
176
-
177
- HB_EXTERN hb_subset_flags_t
178
- hb_subset_input_get_flags (hb_subset_input_t *input);
179
-
180
- HB_EXTERN void
181
- hb_subset_input_set_flags (hb_subset_input_t *input,
182
- unsigned value);
183
-
184
- HB_EXTERN hb_bool_t
185
- hb_subset_input_pin_all_axes_to_default (hb_subset_input_t *input,
186
- hb_face_t *face);
187
-
188
- HB_EXTERN hb_bool_t
189
- hb_subset_input_pin_axis_to_default (hb_subset_input_t *input,
190
- hb_face_t *face,
191
- hb_tag_t axis_tag);
192
-
193
- HB_EXTERN hb_bool_t
194
- hb_subset_input_pin_axis_location (hb_subset_input_t *input,
195
- hb_face_t *face,
196
- hb_tag_t axis_tag,
197
- float axis_value);
198
-
199
- HB_EXTERN hb_bool_t
200
- hb_subset_input_get_axis_range (hb_subset_input_t *input,
201
- hb_tag_t axis_tag,
202
- float *axis_min_value,
203
- float *axis_max_value,
204
- float *axis_def_value);
205
-
206
- HB_EXTERN hb_bool_t
207
- hb_subset_input_set_axis_range (hb_subset_input_t *input,
208
- hb_face_t *face,
209
- hb_tag_t axis_tag,
210
- float axis_min_value,
211
- float axis_max_value,
212
- float axis_def_value);
213
-
214
- HB_EXTERN hb_bool_t
215
- hb_subset_axis_range_from_string (const char *str, int len,
216
- float *axis_min_value,
217
- float *axis_max_value,
218
- float *axis_def_value);
219
-
220
- HB_EXTERN void
221
- hb_subset_axis_range_to_string (hb_subset_input_t *input,
222
- hb_tag_t axis_tag,
223
- char *buf,
224
- unsigned size);
225
-
226
- #ifdef HB_EXPERIMENTAL_API
227
- HB_EXTERN hb_bool_t
228
- hb_subset_input_override_name_table (hb_subset_input_t *input,
229
- hb_ot_name_id_t name_id,
230
- unsigned platform_id,
231
- unsigned encoding_id,
232
- unsigned language_id,
233
- const char *name_str,
234
- int str_len);
235
-
236
-
237
- /*
238
- * Raw outline data access
239
- */
240
-
241
- HB_EXTERN hb_blob_t*
242
- hb_subset_cff_get_charstring_data (hb_face_t* face, hb_codepoint_t glyph_index);
243
-
244
- HB_EXTERN hb_blob_t*
245
- hb_subset_cff_get_charstrings_index (hb_face_t* face);
246
-
247
- HB_EXTERN hb_blob_t*
248
- hb_subset_cff2_get_charstring_data (hb_face_t* face, hb_codepoint_t glyph_index);
249
-
250
- HB_EXTERN hb_blob_t*
251
- hb_subset_cff2_get_charstrings_index (hb_face_t* face);
252
- #endif
253
-
254
- HB_EXTERN hb_face_t *
255
- hb_subset_preprocess (hb_face_t *source);
256
-
257
- HB_EXTERN hb_face_t *
258
- hb_subset_or_fail (hb_face_t *source, const hb_subset_input_t *input);
259
-
260
- HB_EXTERN hb_face_t *
261
- hb_subset_plan_execute_or_fail (hb_subset_plan_t *plan);
262
-
263
- HB_EXTERN hb_subset_plan_t *
264
- hb_subset_plan_create_or_fail (hb_face_t *face,
265
- const hb_subset_input_t *input);
266
-
267
- HB_EXTERN void
268
- hb_subset_plan_destroy (hb_subset_plan_t *plan);
269
-
270
- HB_EXTERN hb_map_t *
271
- hb_subset_plan_old_to_new_glyph_mapping (const hb_subset_plan_t *plan);
272
-
273
- HB_EXTERN hb_map_t *
274
- hb_subset_plan_new_to_old_glyph_mapping (const hb_subset_plan_t *plan);
275
-
276
- HB_EXTERN hb_map_t *
277
- hb_subset_plan_unicode_to_old_glyph_mapping (const hb_subset_plan_t *plan);
278
-
279
-
280
- HB_EXTERN hb_subset_plan_t *
281
- hb_subset_plan_reference (hb_subset_plan_t *plan);
282
-
283
- HB_EXTERN hb_bool_t
284
- hb_subset_plan_set_user_data (hb_subset_plan_t *plan,
285
- hb_user_data_key_t *key,
286
- void *data,
287
- hb_destroy_func_t destroy,
288
- hb_bool_t replace);
289
-
290
- HB_EXTERN void *
291
- hb_subset_plan_get_user_data (const hb_subset_plan_t *plan,
292
- hb_user_data_key_t *key);
293
-
294
-
295
- HB_END_DECLS
296
-
297
- #endif /* HB_SUBSET_H */