@img/sharp-libvips-dev 1.1.0-rc3 → 1.1.0-rc5

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 (119) hide show
  1. package/include/aom/aom_codec.h +18 -1
  2. package/include/aom/aom_encoder.h +2 -0
  3. package/include/aom/aom_image.h +3 -1
  4. package/include/aom/aomcx.h +52 -12
  5. package/include/archive.h +3 -3
  6. package/include/archive_entry.h +3 -2
  7. package/include/cairo/cairo-version.h +1 -1
  8. package/include/expat.h +6 -4
  9. package/include/expat_config.h +3 -3
  10. package/include/ffi.h +1 -1
  11. package/include/fontconfig/fcfreetype.h +5 -5
  12. package/include/fontconfig/fcprivate.h +86 -92
  13. package/include/fontconfig/fontconfig.h +337 -310
  14. package/include/gio-unix-2.0/gio/gdesktopappinfo.h +1 -1
  15. package/include/gio-unix-2.0/gio/gunixmounts.h +95 -23
  16. package/include/glib-2.0/gio/gdbusconnection.h +65 -5
  17. package/include/glib-2.0/gio/gdebugcontroller.h +1 -1
  18. package/include/glib-2.0/gio/gfile.h +4 -0
  19. package/include/glib-2.0/gio/gio-visibility.h +34 -0
  20. package/include/glib-2.0/gio/gioenums.h +14 -3
  21. package/include/glib-2.0/gio/gioenumtypes.h +3 -3
  22. package/include/glib-2.0/gio/giotypes.h +4 -4
  23. package/include/glib-2.0/gio/gmemorymonitor.h +1 -1
  24. package/include/glib-2.0/gio/gnetworkmonitor.h +1 -1
  25. package/include/glib-2.0/gio/gpowerprofilemonitor.h +1 -1
  26. package/include/glib-2.0/gio/gproxy.h +1 -1
  27. package/include/glib-2.0/gio/gproxyresolver.h +1 -1
  28. package/include/glib-2.0/gio/gresource.h +6 -0
  29. package/include/glib-2.0/gio/gtlsbackend.h +1 -1
  30. package/include/glib-2.0/gio/gvfs.h +3 -3
  31. package/include/glib-2.0/gio/gvolumemonitor.h +1 -1
  32. package/include/glib-2.0/girepository/gi-visibility.h +34 -0
  33. package/include/glib-2.0/girepository/gicallableinfo.h +12 -0
  34. package/include/glib-2.0/girepository/gitypes.h +1 -0
  35. package/include/glib-2.0/glib/garray.h +1 -1
  36. package/include/glib-2.0/glib/gerror.h +1 -1
  37. package/include/glib-2.0/glib/glib-visibility.h +34 -0
  38. package/include/glib-2.0/glib/gmacros.h +3 -3
  39. package/include/glib-2.0/glib/gmain.h +79 -1
  40. package/include/glib-2.0/glib/gmem.h +3 -0
  41. package/include/glib-2.0/glib/goption.h +58 -36
  42. package/include/glib-2.0/glib/gqueue.h +1 -1
  43. package/include/glib-2.0/glib/grefstring.h +4 -0
  44. package/include/glib-2.0/glib/gstdio.h +65 -0
  45. package/include/glib-2.0/glib/gstrfuncs.h +4 -0
  46. package/include/glib-2.0/glib/gtestutils.h +65 -33
  47. package/include/glib-2.0/glib/gthread.h +2 -0
  48. package/include/glib-2.0/glib/gtypes.h +1 -1
  49. package/include/glib-2.0/glib/gunicode.h +21 -5
  50. package/include/glib-2.0/glib/gvariant.h +50 -13
  51. package/include/glib-2.0/glib/gvarianttype.h +62 -46
  52. package/include/glib-2.0/glib/gversionmacros.h +9 -0
  53. package/include/glib-2.0/glib-unix.h +21 -0
  54. package/include/glib-2.0/gmodule/gmodule-visibility.h +34 -0
  55. package/include/glib-2.0/gobject/glib-enumtypes.h +1 -1
  56. package/include/glib-2.0/gobject/gobject-visibility.h +34 -0
  57. package/include/glib-2.0/gobject/gobjectnotifyqueue.c +1 -1
  58. package/include/glib-2.0/gobject/gparam.h +4 -2
  59. package/include/glib-2.0/gobject/gsignal.h +22 -7
  60. package/include/glib-2.0/gobject/gtype.h +10 -4
  61. package/include/harfbuzz/hb-buffer.h +62 -3
  62. package/include/harfbuzz/hb-common.h +11 -0
  63. package/include/harfbuzz/hb-draw.h +10 -2
  64. package/include/harfbuzz/hb-face.h +29 -2
  65. package/include/harfbuzz/hb-font.h +6 -0
  66. package/include/harfbuzz/hb-ft.h +15 -1
  67. package/include/harfbuzz/hb-ot-shape.h +6 -0
  68. package/include/harfbuzz/hb-paint.h +9 -1
  69. package/include/harfbuzz/hb-shape.h +2 -0
  70. package/include/harfbuzz/hb-subset-serialize.h +83 -0
  71. package/include/harfbuzz/hb-subset.h +12 -0
  72. package/include/harfbuzz/hb-version.h +3 -3
  73. package/include/lcms2.h +7 -5
  74. package/include/lcms2_plugin.h +1 -1
  75. package/include/libexif/exif-byte-order.h +2 -0
  76. package/include/libexif/exif-content.h +2 -0
  77. package/include/libexif/exif-data-type.h +2 -0
  78. package/include/libexif/exif-data.h +3 -2
  79. package/include/libexif/exif-entry.h +2 -0
  80. package/include/libexif/exif-format.h +2 -0
  81. package/include/libexif/exif-ifd.h +2 -0
  82. package/include/libexif/exif-loader.h +2 -0
  83. package/include/libexif/exif-log.h +2 -0
  84. package/include/libexif/exif-mem.h +2 -0
  85. package/include/libexif/exif-mnote-data.h +2 -0
  86. package/include/libexif/exif-tag.h +2 -0
  87. package/include/libexif/exif-utils.h +2 -0
  88. package/include/libheif/heif.h +12 -3
  89. package/include/libheif/heif_cxx.h +18 -12
  90. package/include/libheif/heif_items.h +2 -2
  91. package/include/libheif/heif_properties.h +4 -4
  92. package/include/libheif/heif_version.h +2 -2
  93. package/include/libpng16/png.h +120 -12
  94. package/include/libpng16/pngconf.h +2 -3
  95. package/include/libpng16/pnglibconf.h +11 -2
  96. package/include/librsvg-2.0/librsvg/rsvg-features.h +1 -1
  97. package/include/librsvg-2.0/librsvg/rsvg-pixbuf.h +1 -1
  98. package/include/librsvg-2.0/librsvg/rsvg-version.h +3 -3
  99. package/include/librsvg-2.0/librsvg/rsvg.h +1 -1
  100. package/include/libxml2/libxml/xmlversion.h +4 -4
  101. package/include/pango-1.0/pango/pango-features.h +3 -3
  102. package/include/pango-1.0/pango/pango-font.h +32 -3
  103. package/include/pango-1.0/pango/pango-fontmap.h +4 -0
  104. package/include/pango-1.0/pango/pango-layout.h +10 -1
  105. package/include/pango-1.0/pango/pango-version-macros.h +52 -0
  106. package/include/pango-1.0/pango/pangofc-fontmap.h +6 -0
  107. package/include/pixman-1/pixman-version.h +3 -3
  108. package/include/png.h +120 -12
  109. package/include/pngconf.h +2 -3
  110. package/include/pnglibconf.h +11 -2
  111. package/include/vips/colour.h +2 -0
  112. package/include/vips/version.h +4 -4
  113. package/include/webp/encode.h +5 -4
  114. package/include/webp/sharpyuv/sharpyuv.h +14 -5
  115. package/include/webp/sharpyuv/sharpyuv_csp.h +5 -0
  116. package/include/webp/types.h +2 -2
  117. package/include/zlib.h +4 -4
  118. package/package.json +1 -1
  119. package/versions.json +20 -20
@@ -422,18 +422,34 @@ hb_buffer_get_flags (const hb_buffer_t *buffer);
422
422
  * @HB_BUFFER_CLUSTER_LEVEL_CHARACTERS: Don't group cluster values.
423
423
  * @HB_BUFFER_CLUSTER_LEVEL_DEFAULT: Default cluster level,
424
424
  * equal to @HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES.
425
- *
425
+ * @HB_BUFFER_CLUSTER_LEVEL_GRAPHEMES: Only group clusters, but don't enforce monotone order.
426
+ *
426
427
  * Data type for holding HarfBuzz's clustering behavior options. The cluster level
427
- * dictates one aspect of how HarfBuzz will treat non-base characters
428
+ * dictates one aspect of how HarfBuzz will treat non-base characters
428
429
  * during shaping.
429
430
  *
430
431
  * In @HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES, non-base
431
432
  * characters are merged into the cluster of the base character that precedes them.
433
+ * There is also cluster merging every time the clusters will otherwise become non-monotone.
432
434
  *
433
435
  * In @HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS, non-base characters are initially
434
436
  * assigned their own cluster values, which are not merged into preceding base
435
437
  * clusters. This allows HarfBuzz to perform additional operations like reorder
436
- * sequences of adjacent marks.
438
+ * sequences of adjacent marks. The output is still monotone, but the cluster
439
+ * values are more granular.
440
+ *
441
+ * In @HB_BUFFER_CLUSTER_LEVEL_CHARACTERS, non-base characters are assigned their
442
+ * own cluster values, which are not merged into preceding base clusters. Moreover,
443
+ * the cluster values are not merged into monotone order. This is the most granular
444
+ * cluster level, and it is useful for clients that need to know the exact cluster
445
+ * values of each character, but is harder to use for clients, since clusters
446
+ * might appear in any order.
447
+ *
448
+ * In @HB_BUFFER_CLUSTER_LEVEL_GRAPHEMES, non-base characters are merged into the
449
+ * cluster of the base character that precedes them. This is similar to the Unicode
450
+ * Grapheme Cluster algorithm, but it is not exactly the same. The output is
451
+ * not forced to be monotone. This is useful for clients that want to use HarfBuzz
452
+ * as a cheap implementation of the Unicode Grapheme Cluster algorithm.
437
453
  *
438
454
  * @HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES is the default, because it maintains
439
455
  * backward compatibility with older versions of HarfBuzz. New client programs that
@@ -446,9 +462,52 @@ typedef enum {
446
462
  HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES = 0,
447
463
  HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS = 1,
448
464
  HB_BUFFER_CLUSTER_LEVEL_CHARACTERS = 2,
465
+ HB_BUFFER_CLUSTER_LEVEL_GRAPHEMES = 3,
449
466
  HB_BUFFER_CLUSTER_LEVEL_DEFAULT = HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES
450
467
  } hb_buffer_cluster_level_t;
451
468
 
469
+ /**
470
+ * HB_BUFFER_CLUSTER_LEVEL_IS_MONOTONE:
471
+ * @level: #hb_buffer_cluster_level_t to test
472
+ *
473
+ * Tests whether a cluster level groups cluster values into monotone order.
474
+ * Requires that the level be valid.
475
+ *
476
+ * Since: 11.0.0
477
+ */
478
+ #define HB_BUFFER_CLUSTER_LEVEL_IS_MONOTONE(level) \
479
+ ((bool) ((1u << (unsigned) (level)) & \
480
+ ((1u << HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES) | \
481
+ (1u << HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARACTERS))))
482
+
483
+ /**
484
+ * HB_BUFFER_CLUSTER_LEVEL_IS_GRAPHEMES:
485
+ * @level: #hb_buffer_cluster_level_t to test
486
+ *
487
+ * Tests whether a cluster level groups cluster values by graphemes. Requires
488
+ * that the level be valid.
489
+ *
490
+ * Since: 11.0.0
491
+ */
492
+ #define HB_BUFFER_CLUSTER_LEVEL_IS_GRAPHEMES(level) \
493
+ ((bool) ((1u << (unsigned) (level)) & \
494
+ ((1u << HB_BUFFER_CLUSTER_LEVEL_MONOTONE_GRAPHEMES) | \
495
+ (1u << HB_BUFFER_CLUSTER_LEVEL_GRAPHEMES))))
496
+
497
+ /**
498
+ * HB_BUFFER_CLUSTER_LEVEL_IS_CHARACTERS
499
+ * @level: #hb_buffer_cluster_level_t to test
500
+ *
501
+ * Tests whether a cluster level does not group cluster values by graphemes.
502
+ * Requires that the level be valid.
503
+ *
504
+ * Since: 11.0.0
505
+ */
506
+ #define HB_BUFFER_CLUSTER_LEVEL_IS_CHARACTERS(level) \
507
+ ((bool) ((1u << (unsigned) (level)) & \
508
+ ((1u << HB_BUFFER_CLUSTER_LEVEL_MONOTONE_CHARCATERS) | \
509
+ (1u << HB_BUFFER_CLUSTER_LEVEL_CHARACTERS))))
510
+
452
511
  HB_EXTERN void
453
512
  hb_buffer_set_cluster_level (hb_buffer_t *buffer,
454
513
  hb_buffer_cluster_level_t cluster_level);
@@ -65,6 +65,7 @@ typedef unsigned __int64 uint64_t;
65
65
  #else
66
66
  # include <inttypes.h>
67
67
  #endif
68
+ #include <stddef.h>
68
69
 
69
70
  #if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1))
70
71
  #define HB_DEPRECATED __attribute__((__deprecated__))
@@ -948,6 +949,16 @@ typedef struct hb_glyph_extents_t {
948
949
  */
949
950
  typedef struct hb_font_t hb_font_t;
950
951
 
952
+ /* Not of much use to clients. */
953
+ HB_EXTERN void*
954
+ hb_malloc (size_t size);
955
+ HB_EXTERN void*
956
+ hb_calloc (size_t nmemb, size_t size);
957
+ HB_EXTERN void*
958
+ hb_realloc (void *ptr, size_t size);
959
+ HB_EXTERN void
960
+ hb_free (void *ptr);
961
+
951
962
  HB_END_DECLS
952
963
 
953
964
  #endif /* HB_COMMON_H */
@@ -41,9 +41,16 @@ HB_BEGIN_DECLS
41
41
  * @path_start_y: Y component of the start of current path
42
42
  * @current_x: X component of current point
43
43
  * @current_y: Y component of current point
44
+ * @slant_xy: (Since: 11.0.0): Slanting factor for synthetic oblique
44
45
  *
45
46
  * Current drawing state.
46
47
  *
48
+ * The @slant_xy is a slanting factor for synthetic oblique. If the font's
49
+ * oblique angle is not 0, this factor is used to slant the drawing. For
50
+ * fonts with uniform x and y scales, this factor is calculated as
51
+ * tan(oblique_angle). For fonts with non-uniform scales, this factor is
52
+ * calculated as tan(oblique_angle) * x_scale / y_scale, or 0 if y_scale is 0.
53
+ *
47
54
  * Since: 4.0.0
48
55
  **/
49
56
  typedef struct hb_draw_state_t {
@@ -55,6 +62,8 @@ typedef struct hb_draw_state_t {
55
62
  float current_x;
56
63
  float current_y;
57
64
 
65
+ float slant_xy;
66
+
58
67
  /*< private >*/
59
68
  hb_var_num_t reserved1;
60
69
  hb_var_num_t reserved2;
@@ -62,7 +71,6 @@ typedef struct hb_draw_state_t {
62
71
  hb_var_num_t reserved4;
63
72
  hb_var_num_t reserved5;
64
73
  hb_var_num_t reserved6;
65
- hb_var_num_t reserved7;
66
74
  } hb_draw_state_t;
67
75
 
68
76
  /**
@@ -70,7 +78,7 @@ typedef struct hb_draw_state_t {
70
78
  *
71
79
  * The default #hb_draw_state_t at the start of glyph drawing.
72
80
  */
73
- #define HB_DRAW_STATE_DEFAULT {0, 0.f, 0.f, 0.f, 0.f, {0.}, {0.}, {0.}}
81
+ #define HB_DRAW_STATE_DEFAULT {0, 0.f, 0.f, 0.f, 0.f, 0.f, {0.}, {0.}, {0.}, {0.}, {0.}, {0.}}
74
82
 
75
83
 
76
84
  /**
@@ -59,15 +59,42 @@ HB_EXTERN hb_face_t *
59
59
  hb_face_create (hb_blob_t *blob,
60
60
  unsigned int index);
61
61
 
62
+ HB_EXTERN hb_face_t *
63
+ hb_face_create_or_fail (hb_blob_t *blob,
64
+ unsigned int index);
65
+
66
+ HB_EXTERN hb_face_t *
67
+ hb_face_create_or_fail_using (hb_blob_t *blob,
68
+ unsigned int index,
69
+ const char *loader_name);
70
+
71
+ HB_EXTERN hb_face_t *
72
+ hb_face_create_from_file_or_fail (const char *file_name,
73
+ unsigned int index);
74
+
75
+ HB_EXTERN hb_face_t *
76
+ hb_face_create_from_file_or_fail_using (const char *file_name,
77
+ unsigned int index,
78
+ const char *loader_name);
79
+
80
+ HB_EXTERN const char **
81
+ hb_face_list_loaders (void);
82
+
83
+
62
84
  /**
63
85
  * hb_reference_table_func_t:
64
86
  * @face: an #hb_face_t to reference table for
65
87
  * @tag: the tag of the table to reference
66
88
  * @user_data: User data pointer passed by the caller
67
89
  *
68
- * Callback function for hb_face_create_for_tables().
90
+ * Callback function for hb_face_create_for_tables(). The @tag is the tag of the
91
+ * table to reference, and the special tag #HB_TAG_NONE is used to reference the
92
+ * blob of the face itself. If referencing the face blob is not possible, it is
93
+ * recommended to set hb_get_table_tags_func_t on the @face to allow
94
+ * hb_face_reference_blob() to create a face blob out of individual table blobs.
69
95
  *
70
- * Return value: (transfer full): A pointer to the @tag table within @face
96
+ * Return value: (transfer full): A pointer to the @tag table within @face or
97
+ * `NULL` if the table is not found or cannot be referenced.
71
98
  *
72
99
  * Since: 0.9.2
73
100
  */
@@ -1052,6 +1052,12 @@ hb_font_set_funcs_data (hb_font_t *font,
1052
1052
  void *font_data,
1053
1053
  hb_destroy_func_t destroy);
1054
1054
 
1055
+ HB_EXTERN hb_bool_t
1056
+ hb_font_set_funcs_using (hb_font_t *font,
1057
+ const char *name);
1058
+
1059
+ HB_EXTERN const char **
1060
+ hb_font_list_funcs (void);
1055
1061
 
1056
1062
  HB_EXTERN void
1057
1063
  hb_font_set_scale (hb_font_t *font,
@@ -84,6 +84,13 @@ hb_ft_face_create_cached (FT_Face ft_face);
84
84
  HB_EXTERN hb_face_t *
85
85
  hb_ft_face_create_referenced (FT_Face ft_face);
86
86
 
87
+ HB_EXTERN hb_face_t *
88
+ hb_ft_face_create_from_file_or_fail (const char *file_name,
89
+ unsigned int index);
90
+
91
+ HB_EXTERN hb_face_t *
92
+ hb_ft_face_create_from_blob_or_fail (hb_blob_t *blob,
93
+ unsigned int index);
87
94
 
88
95
  /*
89
96
  * hb-font from ft-face.
@@ -108,7 +115,7 @@ HB_EXTERN hb_font_t *
108
115
  hb_ft_font_create_referenced (FT_Face ft_face);
109
116
 
110
117
  HB_EXTERN FT_Face
111
- hb_ft_font_get_face (hb_font_t *font);
118
+ hb_ft_font_get_ft_face (hb_font_t *font);
112
119
 
113
120
  HB_EXTERN FT_Face
114
121
  hb_ft_font_lock_face (hb_font_t *font);
@@ -139,6 +146,13 @@ hb_ft_hb_font_changed (hb_font_t *font);
139
146
  HB_EXTERN void
140
147
  hb_ft_font_set_funcs (hb_font_t *font);
141
148
 
149
+ #ifndef HB_DISABLE_DEPRECATED
150
+
151
+ HB_DEPRECATED_FOR (hb_ft_font_get_ft_face)
152
+ HB_EXTERN FT_Face
153
+ hb_ft_font_get_face (hb_font_t *font);
154
+
155
+ #endif
142
156
 
143
157
  HB_END_DECLS
144
158
 
@@ -48,6 +48,12 @@ hb_ot_shape_plan_collect_lookups (hb_shape_plan_t *shape_plan,
48
48
  hb_tag_t table_tag,
49
49
  hb_set_t *lookup_indexes /* OUT */);
50
50
 
51
+ HB_EXTERN unsigned int
52
+ hb_ot_shape_plan_get_feature_tags (hb_shape_plan_t *shape_plan,
53
+ unsigned int start_offset,
54
+ unsigned int *tag_count, /* IN/OUT */
55
+ hb_tag_t *tags /* OUT */);
56
+
51
57
  HB_END_DECLS
52
58
 
53
59
  #endif /* HB_OT_SHAPE_H */
@@ -146,7 +146,7 @@ typedef void (*hb_paint_pop_transform_func_t) (hb_paint_funcs_t *funcs,
146
146
  *
147
147
  * A virtual method for the #hb_paint_funcs_t to render a color glyph by glyph index.
148
148
  *
149
- * Return value: %true if the glyph was painted, %false otherwise.
149
+ * Return value: `true` if the glyph was painted, `false` otherwise.
150
150
  *
151
151
  * Since: 8.2.0
152
152
  */
@@ -956,6 +956,14 @@ hb_paint_push_transform (hb_paint_funcs_t *funcs, void *paint_data,
956
956
  float xy, float yy,
957
957
  float dx, float dy);
958
958
 
959
+ HB_EXTERN void
960
+ hb_paint_push_font_transform (hb_paint_funcs_t *funcs, void *paint_data,
961
+ const hb_font_t *font);
962
+
963
+ HB_EXTERN void
964
+ hb_paint_push_inverse_font_transform (hb_paint_funcs_t *funcs, void *paint_data,
965
+ const hb_font_t *font);
966
+
959
967
  HB_EXTERN void
960
968
  hb_paint_pop_transform (hb_paint_funcs_t *funcs, void *paint_data);
961
969
 
@@ -53,6 +53,7 @@ hb_shape_full (hb_font_t *font,
53
53
  unsigned int num_features,
54
54
  const char * const *shaper_list);
55
55
 
56
+ #ifdef HB_EXPERIMENTAL_API
56
57
  HB_EXTERN hb_bool_t
57
58
  hb_shape_justify (hb_font_t *font,
58
59
  hb_buffer_t *buffer,
@@ -64,6 +65,7 @@ hb_shape_justify (hb_font_t *font,
64
65
  float *advance, /* IN/OUT */
65
66
  hb_tag_t *var_tag, /* OUT */
66
67
  float *var_value /* OUT */);
68
+ #endif
67
69
 
68
70
  HB_EXTERN const char **
69
71
  hb_shape_list_shapers (void);
@@ -0,0 +1,83 @@
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 */
@@ -203,6 +203,18 @@ hb_subset_input_set_axis_range (hb_subset_input_t *input,
203
203
  float axis_max_value,
204
204
  float axis_def_value);
205
205
 
206
+ HB_EXTERN hb_bool_t
207
+ hb_subset_axis_range_from_string (const char *str, int len,
208
+ float *axis_min_value,
209
+ float *axis_max_value,
210
+ float *axis_def_value);
211
+
212
+ HB_EXTERN void
213
+ hb_subset_axis_range_to_string (hb_subset_input_t *input,
214
+ hb_tag_t axis_tag,
215
+ char *buf,
216
+ unsigned size);
217
+
206
218
  #ifdef HB_EXPERIMENTAL_API
207
219
  HB_EXTERN hb_bool_t
208
220
  hb_subset_input_override_name_table (hb_subset_input_t *input,
@@ -41,7 +41,7 @@ HB_BEGIN_DECLS
41
41
  *
42
42
  * The major component of the library version available at compile-time.
43
43
  */
44
- #define HB_VERSION_MAJOR 10
44
+ #define HB_VERSION_MAJOR 11
45
45
  /**
46
46
  * HB_VERSION_MINOR:
47
47
  *
@@ -53,14 +53,14 @@ HB_BEGIN_DECLS
53
53
  *
54
54
  * The micro component of the library version available at compile-time.
55
55
  */
56
- #define HB_VERSION_MICRO 1
56
+ #define HB_VERSION_MICRO 0
57
57
 
58
58
  /**
59
59
  * HB_VERSION_STRING:
60
60
  *
61
61
  * A string literal containing the library version available at compile-time.
62
62
  */
63
- #define HB_VERSION_STRING "10.0.1"
63
+ #define HB_VERSION_STRING "11.0.0"
64
64
 
65
65
  /**
66
66
  * HB_VERSION_ATLEAST:
package/include/lcms2.h CHANGED
@@ -1,7 +1,7 @@
1
1
  //---------------------------------------------------------------------------------
2
2
  //
3
3
  // Little Color Management System
4
- // Copyright (c) 1998-2023 Marti Maria Saguer
4
+ // Copyright (c) 1998-2025 Marti Maria Saguer
5
5
  //
6
6
  // Permission is hereby granted, free of charge, to any person obtaining
7
7
  // a copy of this software and associated documentation files (the "Software"),
@@ -23,7 +23,7 @@
23
23
  //
24
24
  //---------------------------------------------------------------------------------
25
25
  //
26
- // Version 2.16
26
+ // Version 2.17
27
27
  //
28
28
 
29
29
  #ifndef _lcms2_H
@@ -64,6 +64,9 @@
64
64
  // Uncomment this to remove the "register" storage class
65
65
  // #define CMS_NO_REGISTER_KEYWORD 1
66
66
 
67
+ // Uncomment this to remove visibility attribute when building shared objects
68
+ // #define CMS_NO_VISIBILITY 1
69
+
67
70
  // ********** End of configuration toggles ******************************
68
71
 
69
72
  // Needed for streams
@@ -84,7 +87,7 @@ extern "C" {
84
87
  #endif
85
88
 
86
89
  // Version/release
87
- #define LCMS_VERSION 2160
90
+ #define LCMS_VERSION 2170
88
91
 
89
92
  // I will give the chance of redefining basic types for compilers that are not fully C99 compliant
90
93
  #ifndef CMS_BASIC_TYPES_ALREADY_DEFINED
@@ -248,7 +251,7 @@ typedef int cmsBool;
248
251
  # define CMSAPI
249
252
  # endif
250
253
  #else // not Windows
251
- # ifdef HAVE_FUNC_ATTRIBUTE_VISIBILITY
254
+ # if defined(HAVE_FUNC_ATTRIBUTE_VISIBILITY) && !defined(CMS_NO_VISIBILITY)
252
255
  # define CMSEXPORT
253
256
  # define CMSAPI __attribute__((visibility("default")))
254
257
  # else
@@ -958,7 +961,6 @@ typedef void* cmsHTRANSFORM;
958
961
  // IEEE 754-2008 "half"
959
962
  #define TYPE_GRAY_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_GRAY)|CHANNELS_SH(1)|BYTES_SH(2))
960
963
  #define TYPE_RGB_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|CHANNELS_SH(3)|BYTES_SH(2))
961
- #define TYPE_RGBA_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(2))
962
964
  #define TYPE_CMYK_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_CMYK)|CHANNELS_SH(4)|BYTES_SH(2))
963
965
 
964
966
  #define TYPE_RGBA_HALF_FLT (FLOAT_SH(1)|COLORSPACE_SH(PT_RGB)|EXTRA_SH(1)|CHANNELS_SH(3)|BYTES_SH(2))
@@ -1,7 +1,7 @@
1
1
  //---------------------------------------------------------------------------------
2
2
  //
3
3
  // Little Color Management System
4
- // Copyright (c) 1998-2023 Marti Maria Saguer
4
+ // Copyright (c) 1998-2024 Marti Maria Saguer
5
5
  //
6
6
  // Permission is hereby granted, free of charge, to any person obtaining
7
7
  // a copy of this software and associated documentation files (the "Software"),
@@ -18,6 +18,8 @@
18
18
  * License along with this library; if not, write to the
19
19
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20
20
  * Boston, MA 02110-1301 USA.
21
+ *
22
+ * SPDX-License-Identifier: LGPL-2.0-or-later
21
23
  */
22
24
 
23
25
  #ifndef LIBEXIF_EXIF_BYTE_ORDER_H
@@ -18,6 +18,8 @@
18
18
  * License along with this library; if not, write to the
19
19
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20
20
  * Boston, MA 02110-1301 USA.
21
+ *
22
+ * SPDX-License-Identifier: LGPL-2.0-or-later
21
23
  */
22
24
 
23
25
  #ifndef LIBEXIF_EXIF_CONTENT_H
@@ -16,6 +16,8 @@
16
16
  * License along with this library; if not, write to the
17
17
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18
18
  * Boston, MA 02110-1301 USA.
19
+ *
20
+ * SPDX-License-Identifier: LGPL-2.0-or-later
19
21
  */
20
22
 
21
23
  #ifndef LIBEXIF_EXIF_DATA_TYPE_H
@@ -2,8 +2,7 @@
2
2
  * \brief Defines the ExifData type and the associated functions.
3
3
  */
4
4
  /*
5
- * \author Lutz Mueller <lutz@users.sourceforge.net>
6
- * \date 2001-2005
5
+ * Copyright (c) 2001-2008 Lutz Mueller <lutz@users.sourceforge.net>
7
6
  *
8
7
  * This library is free software; you can redistribute it and/or
9
8
  * modify it under the terms of the GNU Lesser General Public
@@ -19,6 +18,8 @@
19
18
  * License along with this library; if not, write to the
20
19
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21
20
  * Boston, MA 02110-1301 USA.
21
+ *
22
+ * SPDX-License-Identifier: LGPL-2.0-or-later
22
23
  */
23
24
 
24
25
  #ifndef LIBEXIF_EXIF_DATA_H
@@ -18,6 +18,8 @@
18
18
  * License along with this library; if not, write to the
19
19
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20
20
  * Boston, MA 02110-1301 USA.
21
+ *
22
+ * SPDX-License-Identifier: LGPL-2.0-or-later
21
23
  */
22
24
 
23
25
  #ifndef LIBEXIF_EXIF_ENTRY_H
@@ -19,6 +19,8 @@
19
19
  * License along with this library; if not, write to the
20
20
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
21
21
  * Boston, MA 02110-1301 USA.
22
+ *
23
+ * SPDX-License-Identifier: LGPL-2.0-or-later
22
24
  */
23
25
 
24
26
  #ifndef LIBEXIF_EXIF_FORMAT_H
@@ -16,6 +16,8 @@
16
16
  * License along with this library; if not, write to the
17
17
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18
18
  * Boston, MA 02110-1301 USA.
19
+ *
20
+ * SPDX-License-Identifier: LGPL-2.1-or-later
19
21
  */
20
22
 
21
23
  #ifndef LIBEXIF_EXIF_IFD_H
@@ -18,6 +18,8 @@
18
18
  * License along with this library; if not, write to the
19
19
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20
20
  * Boston, MA 02110-1301 USA.
21
+ *
22
+ * SPDX-License-Identifier: LGPL-2.0-or-later
21
23
  */
22
24
 
23
25
  #ifndef LIBEXIF_EXIF_LOADER_H
@@ -18,6 +18,8 @@
18
18
  * License along with this library; if not, write to the
19
19
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20
20
  * Boston, MA 02110-1301 USA.
21
+ *
22
+ * SPDX-License-Identifier: LGPL-2.0-or-later
21
23
  */
22
24
 
23
25
  #ifndef LIBEXIF_EXIF_LOG_H
@@ -20,6 +20,8 @@
20
20
  * License along with this library; if not, write to the
21
21
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
22
22
  * Boston, MA 02110-1301 USA.
23
+ *
24
+ * SPDX-License-Identifier: LGPL-2.0-or-later
23
25
  */
24
26
 
25
27
  #ifndef LIBEXIF_EXIF_MEM_H
@@ -18,6 +18,8 @@
18
18
  * License along with this library; if not, write to the
19
19
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20
20
  * Boston, MA 02110-1301 USA.
21
+ *
22
+ * SPDX-License-Identifier: LGPL-2.0-or-later
21
23
  */
22
24
 
23
25
  #ifndef LIBEXIF_EXIF_MNOTE_DATA_H
@@ -18,6 +18,8 @@
18
18
  * License along with this library; if not, write to the
19
19
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20
20
  * Boston, MA 02110-1301 USA.
21
+ *
22
+ * SPDX-License-Identifier: LGPL-2.0-or-later
21
23
  */
22
24
 
23
25
  #ifndef LIBEXIF_EXIF_TAG_H
@@ -18,6 +18,8 @@
18
18
  * License along with this library; if not, write to the
19
19
  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20
20
  * Boston, MA 02110-1301 USA.
21
+ *
22
+ * SPDX-License-Identifier: LGPL-2.0-or-later
21
23
  */
22
24
 
23
25
  #ifndef LIBEXIF_EXIF_UTILS_H