Mert
3c26080c39
Add bitdepth option to heif output ( #4036 )
...
Prebuilt binaries support only AVIF with a bitdepth of 8
2024-03-21 14:36:17 +00:00
Lovell Fuller
0f77b18078
Rename internal property name to better reflect use
...
This property is used for the processing pipeline colourspace
rather than the input colourspace, so the name was confusing.
2024-03-06 20:49:47 +00:00
Lovell Fuller
3eeaee71c0
Ensure pipelineColourspace handles CMYK profiles #3906
2024-03-06 20:20:04 +00:00
Lovell Fuller
75fedf1b75
Ensure keepIccProfile retains P3 input profiles #4008
2024-02-26 15:23:50 +00:00
Lovell Fuller
fb70fbb09f
Ensure keepIccProfile retains CMYK input profiles #3906
2024-02-11 20:10:18 +00:00
Lovell Fuller
cbf68c1395
Improve error for unsupported multi-page rotation #3940
2024-01-11 11:59:01 +00:00
Lovell Fuller
9bcf399b4c
Ensure extend op stays sequential when copying px #3928
2024-01-04 09:24:41 +00:00
Lovell Fuller
fe2b298a2f
Emit warning for invalid ICC profile #3895
2023-12-15 12:13:57 +00: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
3f7313d031
Improve tint luminance with weighting function ( #3859 )
...
Co-authored-by: John Cupitt <jcupitt@gmail.com>
2023-11-19 13:19:34 +00:00
Lovell Fuller
0bd1715f36
Options for trim op must be an Object, add lineArt #2363
2023-11-04 14:09:50 +00:00
Lovell Fuller
2e7c60675b
Upgrade to libvips 8.15.0-rc2
2023-11-04 11:36:18 +00:00
Dennis Beatty
28aa176957
Add support for miniswhite when using TIFF output
2023-11-03 11:27:49 +00:00
Lovell Fuller
f43829a16a
Use Call semantics for C++ to JS callbacks
...
Reverts 4ec883e as no longer required
2023-10-19 16:14:21 +01:00
Lovell Fuller
70ac6905c7
Use std::atomic for counters
2023-09-30 14:01:04 +01:00
Lovell Fuller
9c217ab580
Ensure withMetadata can add RGB16 profiles #3773
2023-08-31 12:49:50 +01:00
Lovell Fuller
e7381e522e
Alternative fix for 4340d60, uses existing StaySequential
2023-08-31 12:09:11 +01:00
Lovell Fuller
4340d60ccf
Ensure composite tile images fully decoded #3767
2023-08-31 09:04:51 +01:00
Lovell Fuller
95635683ac
Ensure withMetadata skips default profile for RGB16 #3773
2023-08-24 18:13:00 +01:00
Lovell Fuller
bb7469b2d1
Ensure withMetadata adds default sRGB profile #3761
2023-08-15 13:02:20 +01:00
Kleis Auke Wolthuizen
a2cac61209
Simplify 90/270 orient-before-resize logic ( #3762 )
2023-08-15 07:56:07 +01:00
Kleis Auke Wolthuizen
2829e17743
Fix build with musl 1.2.4 ( #3755 )
2023-08-07 21:57:00 +01:00
Lovell Fuller
85b26dab68
Expose preset option for WebP output #3639
2023-07-12 19:12:04 +01:00
Lovell Fuller
bcd865cc96
Ensure decoding remains sequential for all ops #3725
2023-07-12 11:35:59 +01:00
Lovell Fuller
9c547dc321
Use copy rather than cache to prevent affine overcompute
...
More predictable behaviour, see commit 14c3346 for context
2023-07-10 13:56:42 +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
3434eef5b9
Guard use of smartcrop premultiplied option #3710
2023-07-09 09:57:20 +01:00
Lovell Fuller
2f67823c3d
Allow seq read for EXIF-based auto-orient #3725
2023-07-09 09:26:58 +01:00
Lovell Fuller
14c3346800
Prevent over-compute in affine rotate #3722
2023-07-09 09:04:07 +01:00
Lovell Fuller
de0fc07092
Ensure same access method for all inputs #3669
2023-05-16 13:53:31 +01:00
Lovell Fuller
e873978e53
Docs: clarify which axis is used when mirroring
2023-05-11 10:24:24 +01:00
Lovell Fuller
e98993a6e2
Bump node-addon-api for Buffer::NewOrCopy
2023-04-23 15:43:54 +01:00
Lovell Fuller
b763801d68
Ensure profile-less CMYK roundtrip skips space conv #3620
2023-04-11 20:31:57 +01:00
Lovell Fuller
a8645f0f38
Smartcrop performance can take future advantage of
...
https://github.com/libvips/libvips/commit/de43eea
2023-04-09 21:17:08 +01:00
Anton Marsden
a4c6eba7d4
Add unflatten operation to create an alpha channel ( #3461 )
2023-04-07 11:01:29 +01:00
Lovell Fuller
97cf69c26a
Ensure use of flip op forces random access read #3600
2023-03-31 09:04:22 +01:00
Lovell Fuller
b55e58f31e
Trim space from end of libvips error messages
2023-03-24 09:58:21 +00:00
LachlanNewman
d7776e3b98
Add support to normalise for lower and upper percentiles ( #3583 )
2023-03-21 10:13:12 +00:00
Lovell Fuller
4ec883eaa0
Wrap all async JS callbacks, help avoid possible race #3569
2023-03-01 12:41:11 +00:00
Lovell Fuller
0063df4d4f
Ensure clahe op uses random read, simplify validation
2023-02-28 21:59:31 +00:00
Lovell Fuller
6c61ad256f
Ensure all source code files contain SPDX licence
2023-02-28 17:01:58 +00:00
Tomasz Janowski
6f0e6f2e65
Add support to extend for extendWith, allows copy/mirror/repeat ( #3556 )
2023-02-17 14:01:24 +00:00
Lovell Fuller
42d2f07e44
Add ignoreIcc input option to ignore embedded ICC profile
2023-02-12 17:51:24 +00:00
Lovell Fuller
9e2207f376
Prefer integer (un)premultiply for faster RGBA resize
2023-01-24 15:24:58 +00:00
Lovell Fuller
c150263ef1
Respect fastShrinkOnLoad option for WebP input #3516
2023-01-17 09:39:23 +00:00
Emanuel Jöbstl
6d404f4d2c
Add coords to output when using attention based crop ( #3470 )
2023-01-16 09:20:42 +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
a1e464cc5e
Switch to sequential read as default where possible
2023-01-15 18:43:50 +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