184 Commits

Author SHA1 Message Date
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
4d1f7e051d
Support composite op with non-sRGB pipeline colourspace (#4412) 2025-06-12 10:32:24 +01:00
Kleis Auke Wolthuizen
91f1b58f31
Tests: Regenerate expected fixtures ahead of libvips v8.17.0 (#4402) 2025-06-08 23:31:07 +01:00
Quentin Pinçon
031c808aa5 Expose erode and dilate operations #4243 2025-03-27 13:17:19 +00:00
Lovell Fuller
5ab9168813 Add support for input array to join or animate #1580 2025-02-07 13:53:27 +00:00
Don Denton
14c83e1f4c Add autoOrient operation and constructor option #4144 2025-01-17 11:09:59 +00:00
Lovell Fuller
04e7f58cea Ensure background metadata can be parsed #4090 2024-11-02 13:03:58 +00:00
Lovell Fuller
9582b5036f Upgrade to libvips v8.16.0-rc1 2024-10-14 14:21:23 +01:00
Lovell Fuller
2eb03b0049 Ensure keepIccProfile avoids ICC transform #4186 2024-08-11 09:44:53 +01:00
Lovell Fuller
f128ebdbd4 Tests: assertSimilar support for Promise and callback 2024-07-20 15:10:04 +01:00
Denice
60c5c5083d Add support to recomb operation for 4x4 matrices 2024-07-05 15:31:51 +01:00
Don Denton
472aaf3311
Tests: ensure combination of flip and flop is covered (#4123) 2024-06-04 21:34:18 +01:00
Adriaan Meuris
29336f4cc7
Ensure negate op occurs after profile conversion (#4096)
- Adds CMYK to CMYK profile conversion tests
- Fixes existing greyscale plus alpha test expectation
2024-05-13 12:23:11 +01:00
Lovell Fuller
fe2b298a2f Emit warning for invalid ICC profile #3895 2023-12-15 12:13: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
Anton Marsden
a4c6eba7d4
Add unflatten operation to create an alpha channel (#3461) 2023-04-07 11:01:29 +01:00
Lovell Fuller
b9c3851515 Ensure linear op works with 16-bit input #3605 2023-04-01 12:08:14 +01:00
Lovell Fuller
f8a430bdd3 Tests: reduce CPU cost of RGBA linear test, ~2s faster 2023-03-21 12:42:50 +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
9e2207f376 Prefer integer (un)premultiply for faster RGBA resize 2023-01-24 15:24:58 +00:00
Emanuel Jöbstl
6d404f4d2c
Add coords to output when using attention based crop (#3470) 2023-01-16 09:20:42 +00:00
Kleis Auke Wolthuizen
6cda090ce2
Tests: remove ICC profile from CIELAB fixture (#3510)
This ICC profile is considered incompatible with this image.

See: https://github.com/libvips/libvips/issues/730
2023-01-01 21:12:29 +00:00
Lovell Fuller
01ffa80338 Improve extractChannel support for 16-bit output #3453 2022-11-15 15:00:32 +00:00
Marcos Casagrande
eee0dd36d9
Ensure limitInputPixels uses uint64 (#3349) 2022-09-06 09:05:51 +01:00
Mart
c3a852eecf
Add trim option to provide a specific background colour (#3332)
Co-authored-by: Mart Jansink <mart@cinemait.nl>
2022-08-23 12:28:02 +01:00
Anton Marsden
74e3f73934 Expand linear operation to allow use of per-channel arrays #3303 2022-08-20 10:27:04 +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
Lovell Fuller
e0d3c6e05d Use bounding box of alpha+non-alpha for trim op #2166 2022-07-05 18:19:17 +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
23033e2050 Prevent double unpremultiply with some composite blends 2022-03-04 23:17:07 +00:00
Lovell Fuller
c62002554b Improve performance and accuracy of multi-image composite #2286 2022-02-16 19:04:23 +00:00
Kleis Auke Wolthuizen
7eb5efa3a3
Update tests and comments after 7faacd9 (#3080) 2022-02-08 21:12:38 +00:00
Kleis Auke Wolthuizen
7faacd91b0 Avoid fastShrinkOnLoad workaround 2022-02-08 18:20:25 +00:00
Lovell Fuller
35a81a7af2 Upgrade to libvips v8.12.2 2022-02-01 10:52:02 +00:00
Lovell Fuller
d8f1298511 Ensure rotate-then-extract works with EXIF mirroring #3024 2022-01-08 18:48:11 +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
336856dfc2 Tests: add PNG palette decode/encode roundtrip 2021-11-25 10:29:28 +00:00
Lovell Fuller
079bd7b9f5 Upgrade to libvips v8.12.0-rc1 2021-11-16 10:28:38 +00:00
Zaruike
b7fbffb3f7 Add support for libvips compiled with OpenJPEG 2021-09-05 09:32:02 +01:00
Lovell Fuller
104464c2e0 Ensure images with P3 profiles retain full gamut #2862 2021-08-30 17:15:17 +01:00
Espen Hovlandsdal
b7ddbe71f7 Add support for negating only non-alpha channels
Fixes #1035
2021-08-02 21:19:56 +01:00
Daiz
bb48d0d857 Add pipelineColourspace operator 2021-07-14 13:45:47 +01:00
Lovell Fuller
c65de3fe6d Default to single-channel output from extractChannel #2658 2021-07-14 13:45:47 +01:00
Lovell Fuller
6c2e6c5432 Install: multiple platform-arch binaries in same tree 2021-07-14 13:45:47 +01:00
Brad Parham
4b6b6189bf
Add contrast limiting adaptive histogram equalization (CLAHE) operator (#2726) 2021-05-23 17:36:04 +01:00
Michael Nutt
9a1e8ed574
Add premultiplied boolean flag for raw pixel data input (#2685) 2021-05-03 19:30:37 +01:00
Lovell Fuller
013f5cffa9 Tests: refactor modulate suite, ~20x faster 2021-03-15 18:20:06 +00:00
Lovell Fuller
984a9e653e Upgrade to libvips 8.10.6-alpha1
- Prebuilt binaries now include mozjpeg and libimagequant (BSD 2-Clause)
- Prebuilt binaries limit AVIF support to the most common 8-bit depth
- Add `mozjpeg` option to `jpeg` method, sets mozjpeg defaults
- Reduce the default PNG `compressionLevel` to the more commonly used 6
2021-03-14 11:19:53 +00:00
Lovell Fuller
171aade9cd Tests: reduce time taken by metadata tests 2021-01-26 19:52:33 +00:00