Lovell Fuller
e286e2bff9
Build format-specific input options in a single function
2025-06-17 10:15:40 +01:00
Lovell Fuller
c4b1d80c35
Expose stylesheet and highBitdepth SVG input params
2025-06-16 11:11:02 +01:00
Michael B. Klein
751f9992c4
Expose JPEG 2000 oneshot decoder option #4262
...
Requires libvips compiled with support for JP2 images
Co-authored-by: Kleis Auke Wolthuizen <github@kleisauke.nl>
2025-06-13 08:46:36 +01:00
Kleis Auke Wolthuizen
db3a4528eb
Simplify 94481a9
2025-05-13 19:22:36 +01:00
Kleis Auke Wolthuizen
d36fd5064d
Prefer use of bandjoin_const()
and list-initialization
2025-05-13 19:22:36 +01:00
Kleis Auke Wolthuizen
8e17c6f518
Prefer use of vips_interpretation_max_alpha()
...
This also ensures we handle scRGB correctly, see:
e9c5a31552
2025-05-13 19:22:36 +01:00
Lovell Fuller
94481a967e
Ensure fit=contain resizing supports multiple alpha channels #4382
2025-05-13 14:31:51 +01:00
Lovell Fuller
701143afb3
Ensure animated GIF to WebP conversion retains loop #3394
2025-04-23 15:43:58 +01:00
Lovell Fuller
edad89c531
Ensure removeAlpha removes all alpha channels #2266
2025-02-20 09:26:52 +00:00
Lovell Fuller
5ab9168813
Add support for input array to join or animate #1580
2025-02-07 13:53:27 +00:00
florentzabera
67ff930535
Add support for RGBE Radiance input, requires global libvips #4316
2025-01-21 21:06:19 +00:00
Don Denton
14c83e1f4c
Add autoOrient operation and constructor option #4144
2025-01-17 11:09:59 +00:00
Caleb Meredith
7ee54810d4
Add pdfBackground constructor property ( #4207 )
2024-09-06 12:31:43 +01:00
Lovell Fuller
f325dc3ec9
Refactor to use C++ boolean literals rather than macros
2024-04-30 19:23:31 +01:00
Kleis Auke Wolthuizen
aa8bc19362
Simplify StaySequential operation ( #4074 )
2024-04-19 14:47:49 +01:00
Lovell Fuller
3e8a0fc522
Ensure only one StaySequential operation per pipeline
...
This should reduce memory consumption for more complex pipelines
that combine multiple operations without sequential access support
e.g. flip and Gaussian blur.
2024-04-19 11:27:54 +01:00
Lovell Fuller
e78200cc84
Increase control over output metadata ( #3856 )
...
Add withX and keepX functions to take advantage of
libvips 8.15.0 new 'keep' metadata feature.
2023-11-22 09:03:57 +00:00
Lovell Fuller
f8cf25ca56
Ensure correct interp of 16-bit raw input #3808
2023-10-05 14:05:36 +01:00
Lovell Fuller
70ac6905c7
Use std::atomic for counters
2023-09-30 14:01:04 +01:00
Kleis Auke Wolthuizen
a2cac61209
Simplify 90/270 orient-before-resize logic ( #3762 )
2023-08-15 07:56:07 +01:00
Lovell Fuller
5c19f6dd9b
Ensure resize fit=inside respects 90/270 rotate #3756
2023-08-14 13:45:23 +01:00
Lovell Fuller
bcd865cc96
Ensure decoding remains sequential for all ops #3725
2023-07-12 11:35:59 +01:00
Lovell Fuller
5522060e9e
Limit HEIF output dimensions to 16384x16384
...
This is a slightly breaking change to sync with the behaviour of a
forthcoming libvips patch release. It also matches the libavif
limit. Having an arbitrary limit is safer than no limit.
2023-07-10 10:24:14 +01:00
Lovell Fuller
e98993a6e2
Bump node-addon-api for Buffer::NewOrCopy
2023-04-23 15:43:54 +01:00
Lovell Fuller
b55e58f31e
Trim space from end of libvips error messages
2023-03-24 09:58:21 +00:00
Lovell Fuller
6c61ad256f
Ensure all source code files contain SPDX licence
2023-02-28 17:01:58 +00:00
Lovell Fuller
42d2f07e44
Add ignoreIcc input option to ignore embedded ICC profile
2023-02-12 17:51:24 +00:00
Lovell Fuller
bdc50e1d6e
Unpin node-addon-api, cast CallbackInfo access to size_t
...
See https://github.com/nodejs/node-addon-api/pull/1253
2023-01-16 09:00:42 +00:00
Lovell Fuller
eac6e8b261
Upgrade to libvips v8.14.0-rc1
...
- Replace GIF 'optimise' option with 'reuse'
- Add 'progressive' option to GIF
- Add 'wrap' option to text creation
- Add 'formatMagick' property to *magick input metadata
2022-12-29 15:53:50 +00:00
Lovell Fuller
584807b4f5
Add runtime detection of V8 memory cage #3384
...
When using the V8 memory cage, Buffers cannot be wrapped and then
later freed via a callback. When the cage is detected via a throw,
instead fall back to copying Buffer contents to V8 memory.
This approach will be used by Electron 21+ and you should expect
reduced performance and increased memory consumption/fragmentation.
2022-12-14 16:06:04 +00:00
Lovell Fuller
a7fa7014ef
Add experimental support for JPEG-XL, requires libvips with libjxl
...
The prebuilt binaries do not include support for this format.
2022-12-13 21:55:17 +00:00
Lovell Fuller
9d760f3958
Improve perf of ops that introduce non-opaque background #3465
2022-12-05 20:40:41 +00:00
Lovell Fuller
fbd4970b57
Ensure auto-rotation works with shrink-on-load #3352
...
Fixes regression in 0.31.0
2022-09-07 14:17:40 +01:00
Marcos Casagrande
eee0dd36d9
Ensure limitInputPixels uses uint64 ( #3349 )
2022-09-06 09:05:51 +01:00
Lovell Fuller
c1393daa70
Expose unlimited option for HEIF input
2022-09-05 09:19:53 +01:00
Lovell Fuller
5cdb2b83d5
Upgrade to libvips v8.13.1
2022-09-04 12:42:27 +01:00
Lovell Fuller
f5109560d6
Standardise approach for string to enum conversion
2022-09-02 12:20:09 +01:00
Lovell Fuller
212a6e7519
Ensure op ordering is respected where possible #3319
...
Emit warnings when previous ops might be ignored
Flip and flop now occur before rotate, if any
2022-08-18 16:41:33 +01:00
brahima
ea7cf2a2ef
Expose vips_text to create an image containing rendered text ( #3252 )
2022-07-25 11:32:10 +01:00
Lovell Fuller
e4160c684d
Docs: add timeout example
2022-07-11 11:12:32 +01:00
Lovell Fuller
8ff33763ce
Ensure OpenSlide+FITS input works with custom libvips #3226
2022-07-08 22:25:39 +01:00
Kleis Auke Wolthuizen
afc4c5bf79
Upgrade to libvips v8.13.0-rc1 ( #3230 )
...
* Switch from decompress-zip to extract-zip
The former seems to hang when unzipping a ZIP64 file that uses
the general purpose bit flag 3 as file entry.
See: https://github.com/thejoshwolfe/yauzl#no-streaming-unzip-api
* Prefer to call via static member instead
Makes it clearer that a static method is being called.
* `flatten-orange.jpg`: save without chroma subsampling
To ensure no down-scaling of the Cr/Cb channels.
2022-06-26 22:39:29 +01:00
Lovell Fuller
a0568ec0c3
Allow values for limitInputPixels larger than 32-bit #3238
2022-05-28 08:35:17 +01:00
Chris Hranj
9deac83322
Add missing file name to 'Input file is missing' error message ( #3178 )
2022-04-05 11:35:01 +01:00
Lovell Fuller
926572b41e
Control sensitivity to invalid images via failOn
...
Deprecates failOnError, equivalent to failOn=warning
2022-04-04 12:27:45 +01:00
Lovell Fuller
1d36936954
Ensure create has correct bit depth and colourspace #3139
2022-03-22 19:48:02 +00:00
Lovell Fuller
af80d7e389
Improve error message for missing file that might be SVG
2022-03-02 09:58:55 +00:00
Kleis Auke Wolthuizen
83db5f8a2a
Ensure withoutReduction does not interfere with contain/crop/embed ( #3081 )
2022-02-08 21:22:23 +00:00
Kleis Auke Wolthuizen
513fb40f40
Improve multi-frame image resizing ( #2789 )
...
* Ports vips_thumbnail logic to sharp
* Deprecates the pageHeight output option for WebP/GIF
2021-12-10 20:32:04 +00:00
Lovell Fuller
407bfcb42a
Expose unlimited option for SVG and PNG input #2984
2021-11-24 12:35:20 +00:00