@img/sharp-libvips-dev 0.0.1 → 0.0.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 (109) hide show
  1. package/README.md +3 -3
  2. package/cplusplus/VConnection.cpp +54 -54
  3. package/cplusplus/VError.cpp +20 -18
  4. package/cplusplus/VImage.cpp +636 -589
  5. package/cplusplus/VInterpolate.cpp +22 -22
  6. package/cplusplus/VRegion.cpp +4 -4
  7. package/cplusplus/vips-operators.cpp +2326 -2301
  8. package/include/aom/aom_codec.h +10 -6
  9. package/include/aom/aom_decoder.h +1 -1
  10. package/include/aom/aom_encoder.h +9 -2
  11. package/include/aom/aomcx.h +72 -3
  12. package/include/cairo/cairo-ft.h +1 -1
  13. package/include/cairo/cairo-gobject.h +8 -0
  14. package/include/cairo/cairo-svg.h +3 -3
  15. package/include/cairo/cairo-version.h +2 -2
  16. package/include/cairo/cairo.h +91 -24
  17. package/include/glib-2.0/glib/gmacros.h +1 -1
  18. package/include/glib-2.0/glib/gtestutils.h +1 -1
  19. package/include/glib-2.0/gobject/gtype.h +7 -7
  20. package/include/harfbuzz/hb-version.h +2 -2
  21. package/include/hwy/aligned_allocator.h +211 -0
  22. package/include/hwy/base.h +1517 -0
  23. package/include/hwy/cache_control.h +108 -0
  24. package/include/hwy/detect_compiler_arch.h +281 -0
  25. package/include/hwy/detect_targets.h +644 -0
  26. package/include/hwy/foreach_target.h +340 -0
  27. package/include/hwy/highway.h +435 -0
  28. package/include/hwy/highway_export.h +74 -0
  29. package/include/hwy/nanobenchmark.h +171 -0
  30. package/include/hwy/ops/arm_neon-inl.h +8913 -0
  31. package/include/hwy/ops/arm_sve-inl.h +5105 -0
  32. package/include/hwy/ops/emu128-inl.h +2811 -0
  33. package/include/hwy/ops/generic_ops-inl.h +4745 -0
  34. package/include/hwy/ops/ppc_vsx-inl.h +5716 -0
  35. package/include/hwy/ops/rvv-inl.h +5070 -0
  36. package/include/hwy/ops/scalar-inl.h +1995 -0
  37. package/include/hwy/ops/set_macros-inl.h +578 -0
  38. package/include/hwy/ops/shared-inl.h +539 -0
  39. package/include/hwy/ops/tuple-inl.h +125 -0
  40. package/include/hwy/ops/wasm_128-inl.h +5917 -0
  41. package/include/hwy/ops/x86_128-inl.h +11173 -0
  42. package/include/hwy/ops/x86_256-inl.h +7529 -0
  43. package/include/hwy/ops/x86_512-inl.h +6849 -0
  44. package/include/hwy/per_target.h +44 -0
  45. package/include/hwy/print-inl.h +62 -0
  46. package/include/hwy/print.h +75 -0
  47. package/include/hwy/robust_statistics.h +148 -0
  48. package/include/hwy/targets.h +338 -0
  49. package/include/hwy/timer-inl.h +200 -0
  50. package/include/hwy/timer.h +55 -0
  51. package/include/jconfig.h +2 -2
  52. package/include/jpeglib.h +3 -2
  53. package/include/libheif/heif.h +461 -384
  54. package/include/libheif/heif_cxx.h +4 -1
  55. package/include/libheif/heif_plugin.h +1 -1
  56. package/include/libheif/heif_properties.h +138 -0
  57. package/include/libheif/heif_regions.h +866 -0
  58. package/include/libheif/heif_version.h +3 -3
  59. package/include/libpng16/pnglibconf.h +1 -1
  60. package/include/pnglibconf.h +1 -1
  61. package/include/vips/VConnection8.h +43 -49
  62. package/include/vips/VError8.h +27 -24
  63. package/include/vips/VImage8.h +4861 -4597
  64. package/include/vips/VInterpolate8.h +24 -27
  65. package/include/vips/VRegion8.h +32 -33
  66. package/include/vips/arithmetic.h +169 -169
  67. package/include/vips/basic.h +33 -33
  68. package/include/vips/buf.h +56 -54
  69. package/include/vips/colour.h +95 -95
  70. package/include/vips/connection.h +190 -193
  71. package/include/vips/conversion.h +91 -91
  72. package/include/vips/convolution.h +36 -30
  73. package/include/vips/create.h +63 -63
  74. package/include/vips/dbuf.h +35 -37
  75. package/include/vips/debug.h +65 -33
  76. package/include/vips/draw.h +41 -41
  77. package/include/vips/enumtypes.h +54 -51
  78. package/include/vips/error.h +63 -63
  79. package/include/vips/foreign.h +263 -223
  80. package/include/vips/format.h +48 -48
  81. package/include/vips/freqfilt.h +22 -22
  82. package/include/vips/gate.h +55 -47
  83. package/include/vips/generate.h +34 -34
  84. package/include/vips/header.h +111 -101
  85. package/include/vips/histogram.h +28 -28
  86. package/include/vips/image.h +213 -213
  87. package/include/vips/interpolate.h +40 -41
  88. package/include/vips/memory.h +61 -52
  89. package/include/vips/morphology.h +24 -24
  90. package/include/vips/mosaicing.h +32 -33
  91. package/include/vips/object.h +371 -357
  92. package/include/vips/operation.h +68 -67
  93. package/include/vips/private.h +76 -76
  94. package/include/vips/rect.h +26 -26
  95. package/include/vips/region.h +92 -92
  96. package/include/vips/resample.h +38 -38
  97. package/include/vips/sbuf.h +53 -54
  98. package/include/vips/semaphore.h +24 -24
  99. package/include/vips/thread.h +30 -27
  100. package/include/vips/threadpool.h +48 -49
  101. package/include/vips/transform.h +39 -39
  102. package/include/vips/type.h +90 -85
  103. package/include/vips/util.h +274 -229
  104. package/include/vips/vector.h +24 -144
  105. package/include/vips/version.h +9 -9
  106. package/include/vips/vips.h +41 -40
  107. package/include/zlib.h +23 -19
  108. package/package.json +1 -1
  109. package/versions.json +9 -9
@@ -4,28 +4,28 @@
4
4
 
5
5
  /*
6
6
 
7
- This file is part of VIPS.
8
-
9
- VIPS is free software; you can redistribute it and/or modify
10
- it under the terms of the GNU Lesser General Public License as published by
11
- the Free Software Foundation; either version 2 of the License, or
12
- (at your option) any later version.
13
-
14
- This program is distributed in the hope that it will be useful,
15
- but WITHOUT ANY WARRANTY; without even the implied warranty of
16
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
- GNU Lesser General Public License for more details.
18
-
19
- You should have received a copy of the GNU Lesser General Public License
20
- along with this program; if not, write to the Free Software
21
- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
22
- 02110-1301 USA
7
+ This file is part of VIPS.
8
+
9
+ VIPS is free software; you can redistribute it and/or modify
10
+ it under the terms of the GNU Lesser General Public License as published by
11
+ the Free Software Foundation; either version 2 of the License, or
12
+ (at your option) any later version.
13
+
14
+ This program is distributed in the hope that it will be useful,
15
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
16
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17
+ GNU Lesser General Public License for more details.
18
+
19
+ You should have received a copy of the GNU Lesser General Public License
20
+ along with this program; if not, write to the Free Software
21
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
22
+ 02110-1301 USA
23
23
 
24
24
  */
25
25
 
26
26
  /*
27
27
 
28
- These files are distributed with VIPS - http://www.vips.ecs.soton.ac.uk
28
+ These files are distributed with VIPS - http://www.vips.ecs.soton.ac.uk
29
29
 
30
30
  */
31
31
 
@@ -42,19 +42,19 @@ extern "C" {
42
42
  #endif /*__cplusplus*/
43
43
 
44
44
  #define VIPS_TYPE_FOREIGN (vips_foreign_get_type())
45
- #define VIPS_FOREIGN( obj ) \
46
- (G_TYPE_CHECK_INSTANCE_CAST( (obj), \
47
- VIPS_TYPE_FOREIGN, VipsForeign ))
48
- #define VIPS_FOREIGN_CLASS( klass ) \
49
- (G_TYPE_CHECK_CLASS_CAST( (klass), \
50
- VIPS_TYPE_FOREIGN, VipsForeignClass))
51
- #define VIPS_IS_FOREIGN( obj ) \
52
- (G_TYPE_CHECK_INSTANCE_TYPE( (obj), VIPS_TYPE_FOREIGN ))
53
- #define VIPS_IS_FOREIGN_CLASS( klass ) \
54
- (G_TYPE_CHECK_CLASS_TYPE( (klass), VIPS_TYPE_FOREIGN ))
55
- #define VIPS_FOREIGN_GET_CLASS( obj ) \
56
- (G_TYPE_INSTANCE_GET_CLASS( (obj), \
57
- VIPS_TYPE_FOREIGN, VipsForeignClass ))
45
+ #define VIPS_FOREIGN(obj) \
46
+ (G_TYPE_CHECK_INSTANCE_CAST((obj), \
47
+ VIPS_TYPE_FOREIGN, VipsForeign))
48
+ #define VIPS_FOREIGN_CLASS(klass) \
49
+ (G_TYPE_CHECK_CLASS_CAST((klass), \
50
+ VIPS_TYPE_FOREIGN, VipsForeignClass))
51
+ #define VIPS_IS_FOREIGN(obj) \
52
+ (G_TYPE_CHECK_INSTANCE_TYPE((obj), VIPS_TYPE_FOREIGN))
53
+ #define VIPS_IS_FOREIGN_CLASS(klass) \
54
+ (G_TYPE_CHECK_CLASS_TYPE((klass), VIPS_TYPE_FOREIGN))
55
+ #define VIPS_FOREIGN_GET_CLASS(obj) \
56
+ (G_TYPE_INSTANCE_GET_CLASS((obj), \
57
+ VIPS_TYPE_FOREIGN, VipsForeignClass))
58
58
 
59
59
  typedef struct _VipsForeign {
60
60
  VipsOperation parent_object;
@@ -91,32 +91,32 @@ GType vips_foreign_get_type(void);
91
91
  * subclasses of VipsForeign.
92
92
  */
93
93
  VIPS_API
94
- void *vips_foreign_map( const char *base,
95
- VipsSListMap2Fn fn, void *a, void *b );
94
+ void *vips_foreign_map(const char *base,
95
+ VipsSListMap2Fn fn, void *a, void *b);
96
96
 
97
- /* Image file load properties.
97
+ /* Image file load properties.
98
98
  *
99
99
  * Keep in sync with the deprecated VipsFormatFlags, we need to be able to
100
100
  * cast between them.
101
101
  */
102
102
  typedef enum /*< flags >*/ {
103
- VIPS_FOREIGN_NONE = 0, /* No flags set */
104
- VIPS_FOREIGN_PARTIAL = 1, /* Lazy read OK (eg. tiled tiff) */
105
- VIPS_FOREIGN_BIGENDIAN = 2, /* Most-significant byte first */
106
- VIPS_FOREIGN_SEQUENTIAL = 4, /* Top-to-bottom lazy read OK */
107
- VIPS_FOREIGN_ALL = 7 /* All flags set */
103
+ VIPS_FOREIGN_NONE = 0, /* No flags set */
104
+ VIPS_FOREIGN_PARTIAL = 1, /* Lazy read OK (eg. tiled tiff) */
105
+ VIPS_FOREIGN_BIGENDIAN = 2, /* Most-significant byte first */
106
+ VIPS_FOREIGN_SEQUENTIAL = 4, /* Top-to-bottom lazy read OK */
107
+ VIPS_FOREIGN_ALL = 7 /* All flags set */
108
108
  } VipsForeignFlags;
109
109
 
110
- /**
110
+ /**
111
111
  * VipsFailOn:
112
- * @VIPS_FAIL_ON_NONE: never stop
112
+ * @VIPS_FAIL_ON_NONE: never stop
113
113
  * @VIPS_FAIL_ON_TRUNCATED: stop on image truncated, nothing else
114
114
  * @VIPS_FAIL_ON_ERROR: stop on serious error or truncation
115
115
  * @VIPS_FAIL_ON_WARNING: stop on anything, even warnings
116
116
  *
117
- * How sensitive loaders are to errors, from never stop (very insensitive), to
118
- * stop on the smallest warning (very sensitive).
119
- *
117
+ * How sensitive loaders are to errors, from never stop (very insensitive), to
118
+ * stop on the smallest warning (very sensitive).
119
+ *
120
120
  * Each one implies the ones before it, so #VIPS_FAIL_ON_ERROR implies
121
121
  * #VIPS_FAIL_ON_TRUNCATED.
122
122
  */
@@ -129,29 +129,29 @@ typedef enum {
129
129
  } VipsFailOn;
130
130
 
131
131
  #define VIPS_TYPE_FOREIGN_LOAD (vips_foreign_load_get_type())
132
- #define VIPS_FOREIGN_LOAD( obj ) \
133
- (G_TYPE_CHECK_INSTANCE_CAST( (obj), \
134
- VIPS_TYPE_FOREIGN_LOAD, VipsForeignLoad ))
135
- #define VIPS_FOREIGN_LOAD_CLASS( klass ) \
136
- (G_TYPE_CHECK_CLASS_CAST( (klass), \
137
- VIPS_TYPE_FOREIGN_LOAD, VipsForeignLoadClass))
138
- #define VIPS_IS_FOREIGN_LOAD( obj ) \
139
- (G_TYPE_CHECK_INSTANCE_TYPE( (obj), VIPS_TYPE_FOREIGN_LOAD ))
140
- #define VIPS_IS_FOREIGN_LOAD_CLASS( klass ) \
141
- (G_TYPE_CHECK_CLASS_TYPE( (klass), VIPS_TYPE_FOREIGN_LOAD ))
142
- #define VIPS_FOREIGN_LOAD_GET_CLASS( obj ) \
143
- (G_TYPE_INSTANCE_GET_CLASS( (obj), \
144
- VIPS_TYPE_FOREIGN_LOAD, VipsForeignLoadClass ))
132
+ #define VIPS_FOREIGN_LOAD(obj) \
133
+ (G_TYPE_CHECK_INSTANCE_CAST((obj), \
134
+ VIPS_TYPE_FOREIGN_LOAD, VipsForeignLoad))
135
+ #define VIPS_FOREIGN_LOAD_CLASS(klass) \
136
+ (G_TYPE_CHECK_CLASS_CAST((klass), \
137
+ VIPS_TYPE_FOREIGN_LOAD, VipsForeignLoadClass))
138
+ #define VIPS_IS_FOREIGN_LOAD(obj) \
139
+ (G_TYPE_CHECK_INSTANCE_TYPE((obj), VIPS_TYPE_FOREIGN_LOAD))
140
+ #define VIPS_IS_FOREIGN_LOAD_CLASS(klass) \
141
+ (G_TYPE_CHECK_CLASS_TYPE((klass), VIPS_TYPE_FOREIGN_LOAD))
142
+ #define VIPS_FOREIGN_LOAD_GET_CLASS(obj) \
143
+ (G_TYPE_INSTANCE_GET_CLASS((obj), \
144
+ VIPS_TYPE_FOREIGN_LOAD, VipsForeignLoadClass))
145
145
 
146
146
  typedef struct _VipsForeignLoad {
147
147
  VipsForeign parent_object;
148
148
  /*< private >*/
149
149
 
150
- /* Set TRUE to force open via memory.
150
+ /* Set TRUE to force open via memory.
151
151
  */
152
152
  gboolean memory;
153
153
 
154
- /* Type of access upstream wants and the loader must supply.
154
+ /* Type of access upstream wants and the loader must supply.
155
155
  */
156
156
  VipsAccess access;
157
157
 
@@ -192,75 +192,80 @@ typedef struct _VipsForeignLoad {
192
192
  * from also triggering the load.
193
193
  */
194
194
  gboolean error;
195
+
196
+ /* Set by "revalidate": set the REVALIDATE flag for this operation to
197
+ * force it to execute.
198
+ */
199
+ gboolean revalidate;
195
200
  } VipsForeignLoad;
196
201
 
197
202
  typedef struct _VipsForeignLoadClass {
198
203
  VipsForeignClass parent_class;
199
204
  /*< public >*/
200
205
 
201
- /* Is a file in this format.
206
+ /* Is a file in this format.
202
207
  *
203
- * This function should return %TRUE if the file contains an image of
208
+ * This function should return %TRUE if the file contains an image of
204
209
  * this type. If you don't define this function, #VipsForeignLoad
205
210
  * will use @suffs instead.
206
211
  */
207
- gboolean (*is_a)( const char *filename );
212
+ gboolean (*is_a)(const char *filename);
208
213
 
209
- /* Is a buffer in this format.
214
+ /* Is a buffer in this format.
210
215
  *
211
- * This function should return %TRUE if the buffer contains an image of
212
- * this type.
216
+ * This function should return %TRUE if the buffer contains an image of
217
+ * this type.
213
218
  */
214
- gboolean (*is_a_buffer)( const void *data, size_t size );
219
+ gboolean (*is_a_buffer)(const void *data, size_t size);
215
220
 
216
- /* Is a stream in this format.
221
+ /* Is a stream in this format.
217
222
  *
218
- * This function should return %TRUE if the stream contains an image of
219
- * this type.
223
+ * This function should return %TRUE if the stream contains an image of
224
+ * this type.
220
225
  */
221
- gboolean (*is_a_source)( VipsSource *source );
226
+ gboolean (*is_a_source)(VipsSource *source);
222
227
 
223
- /* Get the flags from a filename.
228
+ /* Get the flags from a filename.
224
229
  *
225
230
  * This function should examine the file and return a set
226
- * of flags. If you don't define it, vips will default to 0 (no flags
227
- * set).
231
+ * of flags. If you don't define it, vips will default to 0 (no flags
232
+ * set).
228
233
  *
229
234
  * This method is necessary for vips7 compatibility. Don't define
230
235
  * it if you don't need vips7.
231
236
  */
232
- VipsForeignFlags (*get_flags_filename)( const char *filename );
237
+ VipsForeignFlags (*get_flags_filename)(const char *filename);
233
238
 
234
- /* Get the flags for this load operation. Images can be loaded from
239
+ /* Get the flags for this load operation. Images can be loaded from
235
240
  * (for example) memory areas rather than files, so you can't just use
236
241
  * @get_flags_filename().
237
242
  */
238
- VipsForeignFlags (*get_flags)( VipsForeignLoad *load );
243
+ VipsForeignFlags (*get_flags)(VipsForeignLoad *load);
239
244
 
240
- /* Do the minimum read we can.
245
+ /* Do the minimum read we can.
241
246
  *
242
- * Set the header fields in @out from @filename. If you can read the
247
+ * Set the header fields in @out from @filename. If you can read the
243
248
  * whole image as well with no performance cost (as with vipsload),
244
249
  * or if your loader does not support reading only the header, read
245
250
  * the entire image in this method and leave @load() NULL.
246
251
  *
247
- * @header() needs to set the dhint on the image .. otherwise you get
252
+ * @header() needs to set the dhint on the image .. otherwise you get
248
253
  * the default SMALLTILE.
249
254
  *
250
255
  * Return 0 for success, -1 for error, setting vips_error().
251
256
  */
252
- int (*header)( VipsForeignLoad *load );
257
+ int (*header)(VipsForeignLoad *load);
253
258
 
254
- /* Read the whole image into @real. The pixels will get copied to @out
259
+ /* Read the whole image into @real. The pixels will get copied to @out
255
260
  * later.
256
261
  *
257
- * You can omit this method if you define a @header() method which
258
- * loads the whole file.
262
+ * You can omit this method if you define a @header() method which
263
+ * loads the whole file.
259
264
  *
260
265
  * Return 0 for success, -1 for error, setting
261
266
  * vips_error().
262
267
  */
263
- int (*load)( VipsForeignLoad *load );
268
+ int (*load)(VipsForeignLoad *load);
264
269
  } VipsForeignLoadClass;
265
270
 
266
271
  /* Don't put spaces around void here, it breaks gtk-doc.
@@ -269,45 +274,45 @@ VIPS_API
269
274
  GType vips_foreign_load_get_type(void);
270
275
 
271
276
  VIPS_API
272
- const char *vips_foreign_find_load( const char *filename );
277
+ const char *vips_foreign_find_load(const char *filename);
273
278
  VIPS_API
274
- const char *vips_foreign_find_load_buffer( const void *data, size_t size );
279
+ const char *vips_foreign_find_load_buffer(const void *data, size_t size);
275
280
  VIPS_API
276
- const char *vips_foreign_find_load_source( VipsSource *source );
281
+ const char *vips_foreign_find_load_source(VipsSource *source);
277
282
 
278
283
  VIPS_API
279
- VipsForeignFlags vips_foreign_flags( const char *loader, const char *filename );
284
+ VipsForeignFlags vips_foreign_flags(const char *loader, const char *filename);
280
285
  VIPS_API
281
- gboolean vips_foreign_is_a( const char *loader, const char *filename );
286
+ gboolean vips_foreign_is_a(const char *loader, const char *filename);
282
287
  VIPS_API
283
- gboolean vips_foreign_is_a_buffer( const char *loader,
284
- const void *data, size_t size );
288
+ gboolean vips_foreign_is_a_buffer(const char *loader,
289
+ const void *data, size_t size);
285
290
  VIPS_API
286
- gboolean vips_foreign_is_a_source( const char *loader,
287
- VipsSource *source );
291
+ gboolean vips_foreign_is_a_source(const char *loader,
292
+ VipsSource *source);
288
293
 
289
294
  VIPS_API
290
- void vips_foreign_load_invalidate( VipsImage *image );
295
+ void vips_foreign_load_invalidate(VipsImage *image);
291
296
 
292
297
  #define VIPS_TYPE_FOREIGN_SAVE (vips_foreign_save_get_type())
293
- #define VIPS_FOREIGN_SAVE( obj ) \
294
- (G_TYPE_CHECK_INSTANCE_CAST( (obj), \
295
- VIPS_TYPE_FOREIGN_SAVE, VipsForeignSave ))
296
- #define VIPS_FOREIGN_SAVE_CLASS( klass ) \
297
- (G_TYPE_CHECK_CLASS_CAST( (klass), \
298
- VIPS_TYPE_FOREIGN_SAVE, VipsForeignSaveClass))
299
- #define VIPS_IS_FOREIGN_SAVE( obj ) \
300
- (G_TYPE_CHECK_INSTANCE_TYPE( (obj), VIPS_TYPE_FOREIGN_SAVE ))
301
- #define VIPS_IS_FOREIGN_SAVE_CLASS( klass ) \
302
- (G_TYPE_CHECK_CLASS_TYPE( (klass), VIPS_TYPE_FOREIGN_SAVE ))
303
- #define VIPS_FOREIGN_SAVE_GET_CLASS( obj ) \
304
- (G_TYPE_INSTANCE_GET_CLASS( (obj), \
305
- VIPS_TYPE_FOREIGN_SAVE, VipsForeignSaveClass ))
306
-
307
- /**
298
+ #define VIPS_FOREIGN_SAVE(obj) \
299
+ (G_TYPE_CHECK_INSTANCE_CAST((obj), \
300
+ VIPS_TYPE_FOREIGN_SAVE, VipsForeignSave))
301
+ #define VIPS_FOREIGN_SAVE_CLASS(klass) \
302
+ (G_TYPE_CHECK_CLASS_CAST((klass), \
303
+ VIPS_TYPE_FOREIGN_SAVE, VipsForeignSaveClass))
304
+ #define VIPS_IS_FOREIGN_SAVE(obj) \
305
+ (G_TYPE_CHECK_INSTANCE_TYPE((obj), VIPS_TYPE_FOREIGN_SAVE))
306
+ #define VIPS_IS_FOREIGN_SAVE_CLASS(klass) \
307
+ (G_TYPE_CHECK_CLASS_TYPE((klass), VIPS_TYPE_FOREIGN_SAVE))
308
+ #define VIPS_FOREIGN_SAVE_GET_CLASS(obj) \
309
+ (G_TYPE_INSTANCE_GET_CLASS((obj), \
310
+ VIPS_TYPE_FOREIGN_SAVE, VipsForeignSaveClass))
311
+
312
+ /**
308
313
  * VipsSaveable:
309
314
  * @VIPS_SAVEABLE_MONO: 1 band (eg. CSV)
310
- * @VIPS_SAVEABLE_RGB: 1 or 3 bands (eg. PPM)
315
+ * @VIPS_SAVEABLE_RGB: 1 or 3 bands (eg. PPM)
311
316
  * @VIPS_SAVEABLE_RGBA: 1, 2, 3 or 4 bands (eg. PNG)
312
317
  * @VIPS_SAVEABLE_RGBA_ONLY: 3 or 4 bands (eg. WEBP)
313
318
  * @VIPS_SAVEABLE_RGB_CMYK: 1, 3 or 4 bands (eg. JPEG)
@@ -325,13 +330,48 @@ typedef enum {
325
330
  VIPS_SAVEABLE_LAST
326
331
  } VipsSaveable;
327
332
 
333
+ /**
334
+ * VipsForeignKeep:
335
+ * @VIPS_FOREIGN_KEEP_NONE: don't attach metadata
336
+ * @VIPS_FOREIGN_KEEP_EXIF: keep Exif metadata
337
+ * @VIPS_FOREIGN_KEEP_XMP: keep XMP metadata
338
+ * @VIPS_FOREIGN_KEEP_IPTC: keep IPTC metadata
339
+ * @VIPS_FOREIGN_KEEP_ICC: keep ICC metadata
340
+ * @VIPS_FOREIGN_KEEP_OTHER: keep other metadata (e.g. PNG comments and some TIFF tags)
341
+ * @VIPS_FOREIGN_KEEP_ALL: keep all metadata
342
+ *
343
+ * Which metadata to retain.
344
+ */
345
+ typedef enum /*< flags >*/ {
346
+ VIPS_FOREIGN_KEEP_NONE = 0,
347
+ VIPS_FOREIGN_KEEP_EXIF = 1 << 0,
348
+ VIPS_FOREIGN_KEEP_XMP = 1 << 1,
349
+ VIPS_FOREIGN_KEEP_IPTC = 1 << 2,
350
+ VIPS_FOREIGN_KEEP_ICC = 1 << 3,
351
+ VIPS_FOREIGN_KEEP_OTHER = 1 << 4,
352
+
353
+ VIPS_FOREIGN_KEEP_ALL = (VIPS_FOREIGN_KEEP_EXIF |
354
+ VIPS_FOREIGN_KEEP_XMP |
355
+ VIPS_FOREIGN_KEEP_IPTC |
356
+ VIPS_FOREIGN_KEEP_ICC |
357
+ VIPS_FOREIGN_KEEP_OTHER),
358
+ } VipsForeignKeep;
359
+
328
360
  typedef struct _VipsForeignSave {
329
361
  VipsForeign parent_object;
330
362
 
331
- /* Don't attach metadata.
363
+ /* Deprecated in favor of [keep=none]
332
364
  */
333
365
  gboolean strip;
334
366
 
367
+ /* Which metadata to retain.
368
+ */
369
+ VipsForeignKeep keep;
370
+
371
+ /* Filename of profile to embed.
372
+ */
373
+ char *profile;
374
+
335
375
  /* If flattening out alpha, the background colour to use. Default to
336
376
  * 0 (black).
337
377
  */
@@ -343,7 +383,7 @@ typedef struct _VipsForeignSave {
343
383
 
344
384
  /*< public >*/
345
385
 
346
- /* The image we are to save, as supplied by our caller.
386
+ /* The image we are to save, as supplied by our caller.
347
387
  */
348
388
  VipsImage *in;
349
389
 
@@ -363,17 +403,17 @@ typedef struct _VipsForeignSaveClass {
363
403
 
364
404
  /* How this format treats bands.
365
405
  *
366
- * @saveable describes the bands that your saver can handle. For
367
- * example, PPM images can have 1 or 3 bands (mono or RGB), so it
406
+ * @saveable describes the bands that your saver can handle. For
407
+ * example, PPM images can have 1 or 3 bands (mono or RGB), so it
368
408
  * uses #VIPS_SAVEABLE_RGB.
369
409
  */
370
410
  VipsSaveable saveable;
371
411
 
372
412
  /* How this format treats band formats.
373
413
  *
374
- * @format_table describes the band formats that your saver can
375
- * handle. For each of the 10 #VipsBandFormat values, the array
376
- * should give the format your saver will accept.
414
+ * @format_table describes the band formats that your saver can
415
+ * handle. For each of the 10 #VipsBandFormat values, the array
416
+ * should give the format your saver will accept.
377
417
  */
378
418
  VipsBandFormat *format_table;
379
419
 
@@ -391,32 +431,32 @@ VIPS_API
391
431
  GType vips_foreign_save_get_type(void);
392
432
 
393
433
  VIPS_API
394
- const char *vips_foreign_find_save( const char *filename );
434
+ const char *vips_foreign_find_save(const char *filename);
395
435
  VIPS_API
396
- gchar **vips_foreign_get_suffixes( void );
436
+ gchar **vips_foreign_get_suffixes(void);
397
437
  VIPS_API
398
- const char *vips_foreign_find_save_buffer( const char *suffix );
438
+ const char *vips_foreign_find_save_buffer(const char *suffix);
399
439
  VIPS_API
400
- const char *vips_foreign_find_save_target( const char *suffix );
440
+ const char *vips_foreign_find_save_target(const char *suffix);
401
441
 
402
442
  VIPS_API
403
- int vips_vipsload( const char *filename, VipsImage **out, ... )
443
+ int vips_vipsload(const char *filename, VipsImage **out, ...)
404
444
  G_GNUC_NULL_TERMINATED;
405
445
  VIPS_API
406
- int vips_vipsload_source( VipsSource *source, VipsImage **out, ... )
446
+ int vips_vipsload_source(VipsSource *source, VipsImage **out, ...)
407
447
  G_GNUC_NULL_TERMINATED;
408
448
  VIPS_API
409
- int vips_vipssave( VipsImage *in, const char *filename, ... )
449
+ int vips_vipssave(VipsImage *in, const char *filename, ...)
410
450
  G_GNUC_NULL_TERMINATED;
411
451
  VIPS_API
412
- int vips_vipssave_target( VipsImage *in, VipsTarget *target, ... )
452
+ int vips_vipssave_target(VipsImage *in, VipsTarget *target, ...)
413
453
  G_GNUC_NULL_TERMINATED;
414
454
 
415
455
  VIPS_API
416
- int vips_openslideload( const char *filename, VipsImage **out, ... )
456
+ int vips_openslideload(const char *filename, VipsImage **out, ...)
417
457
  G_GNUC_NULL_TERMINATED;
418
458
  VIPS_API
419
- int vips_openslideload_source( VipsSource *source, VipsImage **out, ... )
459
+ int vips_openslideload_source(VipsSource *source, VipsImage **out, ...)
420
460
  G_GNUC_NULL_TERMINATED;
421
461
 
422
462
  /**
@@ -452,26 +492,26 @@ typedef enum {
452
492
  } VipsForeignJpegSubsample;
453
493
 
454
494
  VIPS_API
455
- int vips_jpegload( const char *filename, VipsImage **out, ... )
495
+ int vips_jpegload(const char *filename, VipsImage **out, ...)
456
496
  G_GNUC_NULL_TERMINATED;
457
497
  VIPS_API
458
- int vips_jpegload_buffer( void *buf, size_t len, VipsImage **out, ... )
498
+ int vips_jpegload_buffer(void *buf, size_t len, VipsImage **out, ...)
459
499
  G_GNUC_NULL_TERMINATED;
460
500
  VIPS_API
461
- int vips_jpegload_source( VipsSource *source, VipsImage **out, ... )
501
+ int vips_jpegload_source(VipsSource *source, VipsImage **out, ...)
462
502
  G_GNUC_NULL_TERMINATED;
463
503
 
464
504
  VIPS_API
465
- int vips_jpegsave_target( VipsImage *in, VipsTarget *target, ... )
505
+ int vips_jpegsave_target(VipsImage *in, VipsTarget *target, ...)
466
506
  G_GNUC_NULL_TERMINATED;
467
507
  VIPS_API
468
- int vips_jpegsave( VipsImage *in, const char *filename, ... )
508
+ int vips_jpegsave(VipsImage *in, const char *filename, ...)
469
509
  G_GNUC_NULL_TERMINATED;
470
510
  VIPS_API
471
- int vips_jpegsave_buffer( VipsImage *in, void **buf, size_t *len, ... )
511
+ int vips_jpegsave_buffer(VipsImage *in, void **buf, size_t *len, ...)
472
512
  G_GNUC_NULL_TERMINATED;
473
513
  VIPS_API
474
- int vips_jpegsave_mime( VipsImage *in, ... )
514
+ int vips_jpegsave_mime(VipsImage *in, ...)
475
515
  G_GNUC_NULL_TERMINATED;
476
516
 
477
517
  /**
@@ -496,26 +536,26 @@ typedef enum {
496
536
  } VipsForeignWebpPreset;
497
537
 
498
538
  VIPS_API
499
- int vips_webpload_source( VipsSource *source, VipsImage **out, ... )
539
+ int vips_webpload_source(VipsSource *source, VipsImage **out, ...)
500
540
  G_GNUC_NULL_TERMINATED;
501
541
  VIPS_API
502
- int vips_webpload( const char *filename, VipsImage **out, ... )
542
+ int vips_webpload(const char *filename, VipsImage **out, ...)
503
543
  G_GNUC_NULL_TERMINATED;
504
544
  VIPS_API
505
- int vips_webpload_buffer( void *buf, size_t len, VipsImage **out, ... )
545
+ int vips_webpload_buffer(void *buf, size_t len, VipsImage **out, ...)
506
546
  G_GNUC_NULL_TERMINATED;
507
547
 
508
548
  VIPS_API
509
- int vips_webpsave_target( VipsImage *in, VipsTarget *target, ... )
549
+ int vips_webpsave_target(VipsImage *in, VipsTarget *target, ...)
510
550
  G_GNUC_NULL_TERMINATED;
511
551
  VIPS_API
512
- int vips_webpsave( VipsImage *in, const char *filename, ... )
552
+ int vips_webpsave(VipsImage *in, const char *filename, ...)
513
553
  G_GNUC_NULL_TERMINATED;
514
554
  VIPS_API
515
- int vips_webpsave_buffer( VipsImage *in, void **buf, size_t *len, ... )
555
+ int vips_webpsave_buffer(VipsImage *in, void **buf, size_t *len, ...)
516
556
  G_GNUC_NULL_TERMINATED;
517
557
  VIPS_API
518
- int vips_webpsave_mime( VipsImage *in, ... )
558
+ int vips_webpsave_mime(VipsImage *in, ...)
519
559
  G_GNUC_NULL_TERMINATED;
520
560
 
521
561
  /**
@@ -583,90 +623,90 @@ typedef enum {
583
623
  } VipsForeignTiffResunit;
584
624
 
585
625
  VIPS_API
586
- int vips_tiffload( const char *filename, VipsImage **out, ... )
626
+ int vips_tiffload(const char *filename, VipsImage **out, ...)
587
627
  G_GNUC_NULL_TERMINATED;
588
628
  VIPS_API
589
- int vips_tiffload_buffer( void *buf, size_t len, VipsImage **out, ... )
629
+ int vips_tiffload_buffer(void *buf, size_t len, VipsImage **out, ...)
590
630
  G_GNUC_NULL_TERMINATED;
591
631
  VIPS_API
592
- int vips_tiffload_source( VipsSource *source, VipsImage **out, ... )
632
+ int vips_tiffload_source(VipsSource *source, VipsImage **out, ...)
593
633
  G_GNUC_NULL_TERMINATED;
594
634
  VIPS_API
595
- int vips_tiffsave( VipsImage *in, const char *filename, ... )
635
+ int vips_tiffsave(VipsImage *in, const char *filename, ...)
596
636
  G_GNUC_NULL_TERMINATED;
597
637
  VIPS_API
598
- int vips_tiffsave_buffer( VipsImage *in, void **buf, size_t *len, ... )
638
+ int vips_tiffsave_buffer(VipsImage *in, void **buf, size_t *len, ...)
599
639
  G_GNUC_NULL_TERMINATED;
600
640
  VIPS_API
601
- int vips_tiffsave_target( VipsImage *in, VipsTarget *target, ... )
641
+ int vips_tiffsave_target(VipsImage *in, VipsTarget *target, ...)
602
642
  G_GNUC_NULL_TERMINATED;
603
643
 
604
644
  VIPS_API
605
- int vips_openexrload( const char *filename, VipsImage **out, ... )
645
+ int vips_openexrload(const char *filename, VipsImage **out, ...)
606
646
  G_GNUC_NULL_TERMINATED;
607
647
 
608
648
  VIPS_API
609
- int vips_fitsload( const char *filename, VipsImage **out, ... )
649
+ int vips_fitsload(const char *filename, VipsImage **out, ...)
610
650
  G_GNUC_NULL_TERMINATED;
611
651
  VIPS_API
612
- int vips_fitssave( VipsImage *in, const char *filename, ... )
652
+ int vips_fitssave(VipsImage *in, const char *filename, ...)
613
653
  G_GNUC_NULL_TERMINATED;
614
654
 
615
655
  VIPS_API
616
- int vips_analyzeload( const char *filename, VipsImage **out, ... )
656
+ int vips_analyzeload(const char *filename, VipsImage **out, ...)
617
657
  G_GNUC_NULL_TERMINATED;
618
658
 
619
659
  VIPS_API
620
- int vips_rawload( const char *filename, VipsImage **out,
621
- int width, int height, int bands, ... )
660
+ int vips_rawload(const char *filename, VipsImage **out,
661
+ int width, int height, int bands, ...)
622
662
  G_GNUC_NULL_TERMINATED;
623
663
  VIPS_API
624
- int vips_rawsave( VipsImage *in, const char *filename, ... )
664
+ int vips_rawsave(VipsImage *in, const char *filename, ...)
625
665
  G_GNUC_NULL_TERMINATED;
626
666
  VIPS_API
627
- int vips_rawsave_fd( VipsImage *in, int fd, ... )
667
+ int vips_rawsave_fd(VipsImage *in, int fd, ...)
628
668
  G_GNUC_NULL_TERMINATED;
629
669
 
630
670
  VIPS_API
631
- int vips_csvload( const char *filename, VipsImage **out, ... )
671
+ int vips_csvload(const char *filename, VipsImage **out, ...)
632
672
  G_GNUC_NULL_TERMINATED;
633
673
  VIPS_API
634
- int vips_csvload_source( VipsSource *source, VipsImage **out, ... )
674
+ int vips_csvload_source(VipsSource *source, VipsImage **out, ...)
635
675
  G_GNUC_NULL_TERMINATED;
636
676
  VIPS_API
637
- int vips_csvsave( VipsImage *in, const char *filename, ... )
677
+ int vips_csvsave(VipsImage *in, const char *filename, ...)
638
678
  G_GNUC_NULL_TERMINATED;
639
679
  VIPS_API
640
- int vips_csvsave_target( VipsImage *in, VipsTarget *target, ... )
680
+ int vips_csvsave_target(VipsImage *in, VipsTarget *target, ...)
641
681
  G_GNUC_NULL_TERMINATED;
642
682
 
643
683
  VIPS_API
644
- int vips_matrixload( const char *filename, VipsImage **out, ... )
684
+ int vips_matrixload(const char *filename, VipsImage **out, ...)
645
685
  G_GNUC_NULL_TERMINATED;
646
686
  VIPS_API
647
- int vips_matrixload_source( VipsSource *source, VipsImage **out, ... )
687
+ int vips_matrixload_source(VipsSource *source, VipsImage **out, ...)
648
688
  G_GNUC_NULL_TERMINATED;
649
689
  VIPS_API
650
- int vips_matrixsave( VipsImage *in, const char *filename, ... )
690
+ int vips_matrixsave(VipsImage *in, const char *filename, ...)
651
691
  G_GNUC_NULL_TERMINATED;
652
692
  VIPS_API
653
- int vips_matrixsave_target( VipsImage *in, VipsTarget *target, ... )
693
+ int vips_matrixsave_target(VipsImage *in, VipsTarget *target, ...)
654
694
  G_GNUC_NULL_TERMINATED;
655
695
  VIPS_API
656
- int vips_matrixprint( VipsImage *in, ... )
696
+ int vips_matrixprint(VipsImage *in, ...)
657
697
  G_GNUC_NULL_TERMINATED;
658
698
 
659
699
  VIPS_API
660
- int vips_magickload( const char *filename, VipsImage **out, ... )
700
+ int vips_magickload(const char *filename, VipsImage **out, ...)
661
701
  G_GNUC_NULL_TERMINATED;
662
702
  VIPS_API
663
- int vips_magickload_buffer( void *buf, size_t len, VipsImage **out, ... )
703
+ int vips_magickload_buffer(void *buf, size_t len, VipsImage **out, ...)
664
704
  G_GNUC_NULL_TERMINATED;
665
705
  VIPS_API
666
- int vips_magicksave( VipsImage *in, const char *filename, ... )
706
+ int vips_magicksave(VipsImage *in, const char *filename, ...)
667
707
  G_GNUC_NULL_TERMINATED;
668
708
  VIPS_API
669
- int vips_magicksave_buffer( VipsImage *in, void **buf, size_t *len, ... )
709
+ int vips_magicksave_buffer(VipsImage *in, void **buf, size_t *len, ...)
670
710
  G_GNUC_NULL_TERMINATED;
671
711
 
672
712
  /**
@@ -691,22 +731,22 @@ typedef enum /*< flags >*/ {
691
731
  } VipsForeignPngFilter;
692
732
 
693
733
  VIPS_API
694
- int vips_pngload_source( VipsSource *source, VipsImage **out, ... )
734
+ int vips_pngload_source(VipsSource *source, VipsImage **out, ...)
695
735
  G_GNUC_NULL_TERMINATED;
696
736
  VIPS_API
697
- int vips_pngload( const char *filename, VipsImage **out, ... )
737
+ int vips_pngload(const char *filename, VipsImage **out, ...)
698
738
  G_GNUC_NULL_TERMINATED;
699
739
  VIPS_API
700
- int vips_pngload_buffer( void *buf, size_t len, VipsImage **out, ... )
740
+ int vips_pngload_buffer(void *buf, size_t len, VipsImage **out, ...)
701
741
  G_GNUC_NULL_TERMINATED;
702
742
  VIPS_API
703
- int vips_pngsave_target( VipsImage *in, VipsTarget *target, ... )
743
+ int vips_pngsave_target(VipsImage *in, VipsTarget *target, ...)
704
744
  G_GNUC_NULL_TERMINATED;
705
745
  VIPS_API
706
- int vips_pngsave( VipsImage *in, const char *filename, ... )
746
+ int vips_pngsave(VipsImage *in, const char *filename, ...)
707
747
  G_GNUC_NULL_TERMINATED;
708
748
  VIPS_API
709
- int vips_pngsave_buffer( VipsImage *in, void **buf, size_t *len, ... )
749
+ int vips_pngsave_buffer(VipsImage *in, void **buf, size_t *len, ...)
710
750
  G_GNUC_NULL_TERMINATED;
711
751
 
712
752
  /**
@@ -741,149 +781,149 @@ typedef enum {
741
781
  } VipsForeignPpmFormat;
742
782
 
743
783
  VIPS_API
744
- int vips_ppmload( const char *filename, VipsImage **out, ... )
784
+ int vips_ppmload(const char *filename, VipsImage **out, ...)
745
785
  G_GNUC_NULL_TERMINATED;
746
786
  VIPS_API
747
- int vips_ppmload_source( VipsSource *source, VipsImage **out, ... )
787
+ int vips_ppmload_source(VipsSource *source, VipsImage **out, ...)
748
788
  G_GNUC_NULL_TERMINATED;
749
789
  VIPS_API
750
- int vips_ppmsave( VipsImage *in, const char *filename, ... )
790
+ int vips_ppmsave(VipsImage *in, const char *filename, ...)
751
791
  G_GNUC_NULL_TERMINATED;
752
792
  VIPS_API
753
- int vips_ppmsave_target( VipsImage *in, VipsTarget *target, ... )
793
+ int vips_ppmsave_target(VipsImage *in, VipsTarget *target, ...)
754
794
  G_GNUC_NULL_TERMINATED;
755
795
 
756
796
  VIPS_API
757
- int vips_matload( const char *filename, VipsImage **out, ... )
797
+ int vips_matload(const char *filename, VipsImage **out, ...)
758
798
  G_GNUC_NULL_TERMINATED;
759
799
 
760
800
  VIPS_API
761
- int vips_radload_source( VipsSource *source, VipsImage **out, ... )
801
+ int vips_radload_source(VipsSource *source, VipsImage **out, ...)
762
802
  G_GNUC_NULL_TERMINATED;
763
803
  VIPS_API
764
- int vips_radload( const char *filename, VipsImage **out, ... )
804
+ int vips_radload(const char *filename, VipsImage **out, ...)
765
805
  G_GNUC_NULL_TERMINATED;
766
806
  VIPS_API
767
- int vips_radload_buffer( void *buf, size_t len, VipsImage **out, ... )
807
+ int vips_radload_buffer(void *buf, size_t len, VipsImage **out, ...)
768
808
  G_GNUC_NULL_TERMINATED;
769
809
  VIPS_API
770
- int vips_radsave( VipsImage *in, const char *filename, ... )
810
+ int vips_radsave(VipsImage *in, const char *filename, ...)
771
811
  G_GNUC_NULL_TERMINATED;
772
812
  VIPS_API
773
- int vips_radsave_buffer( VipsImage *in, void **buf, size_t *len, ... )
813
+ int vips_radsave_buffer(VipsImage *in, void **buf, size_t *len, ...)
774
814
  G_GNUC_NULL_TERMINATED;
775
815
  VIPS_API
776
- int vips_radsave_target( VipsImage *in, VipsTarget *target, ... )
816
+ int vips_radsave_target(VipsImage *in, VipsTarget *target, ...)
777
817
  G_GNUC_NULL_TERMINATED;
778
818
 
779
819
  VIPS_API
780
- int vips_pdfload( const char *filename, VipsImage **out, ... )
820
+ int vips_pdfload(const char *filename, VipsImage **out, ...)
781
821
  G_GNUC_NULL_TERMINATED;
782
822
  VIPS_API
783
- int vips_pdfload_buffer( void *buf, size_t len, VipsImage **out, ... )
823
+ int vips_pdfload_buffer(void *buf, size_t len, VipsImage **out, ...)
784
824
  G_GNUC_NULL_TERMINATED;
785
825
  VIPS_API
786
- int vips_pdfload_source( VipsSource *source, VipsImage **out, ... )
826
+ int vips_pdfload_source(VipsSource *source, VipsImage **out, ...)
787
827
  G_GNUC_NULL_TERMINATED;
788
828
 
789
829
  VIPS_API
790
- int vips_svgload( const char *filename, VipsImage **out, ... )
830
+ int vips_svgload(const char *filename, VipsImage **out, ...)
791
831
  G_GNUC_NULL_TERMINATED;
792
832
  VIPS_API
793
- int vips_svgload_buffer( void *buf, size_t len, VipsImage **out, ... )
833
+ int vips_svgload_buffer(void *buf, size_t len, VipsImage **out, ...)
794
834
  G_GNUC_NULL_TERMINATED;
795
835
  VIPS_API
796
- int vips_svgload_string( const char *str, VipsImage **out, ... )
836
+ int vips_svgload_string(const char *str, VipsImage **out, ...)
797
837
  G_GNUC_NULL_TERMINATED;
798
838
  VIPS_API
799
- int vips_svgload_source( VipsSource *source, VipsImage **out, ... )
839
+ int vips_svgload_source(VipsSource *source, VipsImage **out, ...)
800
840
  G_GNUC_NULL_TERMINATED;
801
841
 
802
842
  VIPS_API
803
- int vips_gifload( const char *filename, VipsImage **out, ... )
843
+ int vips_gifload(const char *filename, VipsImage **out, ...)
804
844
  G_GNUC_NULL_TERMINATED;
805
845
  VIPS_API
806
- int vips_gifload_buffer( void *buf, size_t len, VipsImage **out, ... )
846
+ int vips_gifload_buffer(void *buf, size_t len, VipsImage **out, ...)
807
847
  G_GNUC_NULL_TERMINATED;
808
848
  VIPS_API
809
- int vips_gifload_source( VipsSource *source, VipsImage **out, ... )
849
+ int vips_gifload_source(VipsSource *source, VipsImage **out, ...)
810
850
  G_GNUC_NULL_TERMINATED;
811
851
 
812
852
  VIPS_API
813
- int vips_gifsave( VipsImage *in, const char *filename, ... )
853
+ int vips_gifsave(VipsImage *in, const char *filename, ...)
814
854
  G_GNUC_NULL_TERMINATED;
815
855
  VIPS_API
816
- int vips_gifsave_buffer( VipsImage *in, void **buf, size_t *len, ... )
856
+ int vips_gifsave_buffer(VipsImage *in, void **buf, size_t *len, ...)
817
857
  G_GNUC_NULL_TERMINATED;
818
858
  VIPS_API
819
- int vips_gifsave_target( VipsImage *in, VipsTarget *target, ... )
859
+ int vips_gifsave_target(VipsImage *in, VipsTarget *target, ...)
820
860
  G_GNUC_NULL_TERMINATED;
821
861
 
822
862
  VIPS_API
823
- int vips_heifload( const char *filename, VipsImage **out, ... )
863
+ int vips_heifload(const char *filename, VipsImage **out, ...)
824
864
  G_GNUC_NULL_TERMINATED;
825
865
  VIPS_API
826
- int vips_heifload_buffer( void *buf, size_t len, VipsImage **out, ... )
866
+ int vips_heifload_buffer(void *buf, size_t len, VipsImage **out, ...)
827
867
  G_GNUC_NULL_TERMINATED;
828
868
  VIPS_API
829
- int vips_heifload_source( VipsSource *source, VipsImage **out, ... )
869
+ int vips_heifload_source(VipsSource *source, VipsImage **out, ...)
830
870
  G_GNUC_NULL_TERMINATED;
831
871
  VIPS_API
832
- int vips_heifsave( VipsImage *in, const char *filename, ... )
872
+ int vips_heifsave(VipsImage *in, const char *filename, ...)
833
873
  G_GNUC_NULL_TERMINATED;
834
874
  VIPS_API
835
- int vips_heifsave_buffer( VipsImage *in, void **buf, size_t *len, ... )
875
+ int vips_heifsave_buffer(VipsImage *in, void **buf, size_t *len, ...)
836
876
  G_GNUC_NULL_TERMINATED;
837
877
  VIPS_API
838
- int vips_heifsave_target( VipsImage *in, VipsTarget *target, ... )
878
+ int vips_heifsave_target(VipsImage *in, VipsTarget *target, ...)
839
879
  G_GNUC_NULL_TERMINATED;
840
880
 
841
881
  VIPS_API
842
- int vips_niftiload( const char *filename, VipsImage **out, ... )
882
+ int vips_niftiload(const char *filename, VipsImage **out, ...)
843
883
  G_GNUC_NULL_TERMINATED;
844
884
  VIPS_API
845
- int vips_niftiload_source( VipsSource *source, VipsImage **out, ... )
885
+ int vips_niftiload_source(VipsSource *source, VipsImage **out, ...)
846
886
  G_GNUC_NULL_TERMINATED;
847
887
  VIPS_API
848
- int vips_niftisave( VipsImage *in, const char *filename, ... )
888
+ int vips_niftisave(VipsImage *in, const char *filename, ...)
849
889
  G_GNUC_NULL_TERMINATED;
850
890
 
851
891
  VIPS_API
852
- int vips_jp2kload( const char *filename, VipsImage **out, ... )
892
+ int vips_jp2kload(const char *filename, VipsImage **out, ...)
853
893
  G_GNUC_NULL_TERMINATED;
854
894
  VIPS_API
855
- int vips_jp2kload_buffer( void *buf, size_t len, VipsImage **out, ... )
895
+ int vips_jp2kload_buffer(void *buf, size_t len, VipsImage **out, ...)
856
896
  G_GNUC_NULL_TERMINATED;
857
897
  VIPS_API
858
- int vips_jp2kload_source( VipsSource *source, VipsImage **out, ... )
898
+ int vips_jp2kload_source(VipsSource *source, VipsImage **out, ...)
859
899
  G_GNUC_NULL_TERMINATED;
860
900
  VIPS_API
861
- int vips_jp2ksave( VipsImage *in, const char *filename, ... )
901
+ int vips_jp2ksave(VipsImage *in, const char *filename, ...)
862
902
  G_GNUC_NULL_TERMINATED;
863
903
  VIPS_API
864
- int vips_jp2ksave_buffer( VipsImage *in, void **buf, size_t *len, ... )
904
+ int vips_jp2ksave_buffer(VipsImage *in, void **buf, size_t *len, ...)
865
905
  G_GNUC_NULL_TERMINATED;
866
906
  VIPS_API
867
- int vips_jp2ksave_target( VipsImage *in, VipsTarget *target, ... )
907
+ int vips_jp2ksave_target(VipsImage *in, VipsTarget *target, ...)
868
908
  G_GNUC_NULL_TERMINATED;
869
909
 
870
910
  VIPS_API
871
- int vips_jxlload_source( VipsSource *source, VipsImage **out, ... )
911
+ int vips_jxlload_source(VipsSource *source, VipsImage **out, ...)
872
912
  G_GNUC_NULL_TERMINATED;
873
913
  VIPS_API
874
- int vips_jxlload_buffer( void *buf, size_t len, VipsImage **out, ... )
914
+ int vips_jxlload_buffer(void *buf, size_t len, VipsImage **out, ...)
875
915
  G_GNUC_NULL_TERMINATED;
876
916
  VIPS_API
877
- int vips_jxlload( const char *filename, VipsImage **out, ... )
917
+ int vips_jxlload(const char *filename, VipsImage **out, ...)
878
918
  G_GNUC_NULL_TERMINATED;
879
919
  VIPS_API
880
- int vips_jxlsave( VipsImage *in, const char *filename, ... )
920
+ int vips_jxlsave(VipsImage *in, const char *filename, ...)
881
921
  G_GNUC_NULL_TERMINATED;
882
922
  VIPS_API
883
- int vips_jxlsave_buffer( VipsImage *in, void **buf, size_t *len, ... )
923
+ int vips_jxlsave_buffer(VipsImage *in, void **buf, size_t *len, ...)
884
924
  G_GNUC_NULL_TERMINATED;
885
925
  VIPS_API
886
- int vips_jxlsave_target( VipsImage *in, VipsTarget *target, ... )
926
+ int vips_jxlsave_target(VipsImage *in, VipsTarget *target, ...)
887
927
  G_GNUC_NULL_TERMINATED;
888
928
 
889
929
  /**
@@ -894,7 +934,7 @@ int vips_jxlsave_target( VipsImage *in, VipsTarget *target, ... )
894
934
  * @VIPS_FOREIGN_DZ_LAYOUT_IIIF: use IIIF v2 directory layout
895
935
  * @VIPS_FOREIGN_DZ_LAYOUT_IIIF3: use IIIF v3 directory layout
896
936
  *
897
- * What directory layout and metadata standard to use.
937
+ * What directory layout and metadata standard to use.
898
938
  */
899
939
  typedef enum {
900
940
  VIPS_FOREIGN_DZ_LAYOUT_DZ,
@@ -936,13 +976,13 @@ typedef enum {
936
976
  } VipsForeignDzContainer;
937
977
 
938
978
  VIPS_API
939
- int vips_dzsave( VipsImage *in, const char *name, ... )
979
+ int vips_dzsave(VipsImage *in, const char *name, ...)
940
980
  G_GNUC_NULL_TERMINATED;
941
981
  VIPS_API
942
- int vips_dzsave_buffer( VipsImage *in, void **buf, size_t *len, ... )
982
+ int vips_dzsave_buffer(VipsImage *in, void **buf, size_t *len, ...)
943
983
  G_GNUC_NULL_TERMINATED;
944
984
  VIPS_API
945
- int vips_dzsave_target( VipsImage *in, VipsTarget *target, ... )
985
+ int vips_dzsave_target(VipsImage *in, VipsTarget *target, ...)
946
986
  G_GNUC_NULL_TERMINATED;
947
987
 
948
988
  /**
@@ -952,7 +992,7 @@ int vips_dzsave_target( VipsImage *in, VipsTarget *target, ... )
952
992
  * @VIPS_FOREIGN_HEIF_COMPRESSION_JPEG: jpeg
953
993
  * @VIPS_FOREIGN_HEIF_COMPRESSION_AV1: aom
954
994
  *
955
- * The compression format to use inside a HEIF container.
995
+ * The compression format to use inside a HEIF container.
956
996
  *
957
997
  * This is assumed to use the same numbering as %heif_compression_format.
958
998
  */