Commit Graph

149 Commits

Author SHA1 Message Date
Moggers b3ff4d9ed6
Implement Header Sniffing For Magickload Tga (#2533)
Add TGA sniffing
2021-11-14 04:04:32 +00:00
Kleis Auke Wolthuizen 008fe2d2f5 Add unit test 2021-11-13 11:29:46 +01:00
John Cupitt c6d863f9d3 fix inverse hyperbolics
oop, typo
2021-11-02 22:58:19 +00:00
Heshy Roskes d8c04011ea
Add hyperbolic functions (#2508)
* add hyperbolic functions
* add hyperbolic function tests
* changelog
* add inverse hyperbolic functions for old compilers
2021-11-02 15:05:37 +00:00
John Cupitt 0c70f3dc7d
add fail-on : better control over loader error handling (#2360)
Instead of a simple fail/don't-fail boolean switch, add fail-on, an enum which sets the sensitivity of loaders to errors. 

There's a new sensitivity level which tries to detect truncated images, but ignores other types of error.
2021-10-31 14:13:18 +00:00
John Cupitt a16f118b0c speed up test suite
ouch we were making a huge avif image in memory
2021-10-25 20:40:42 +01:00
Kleis Auke Wolthuizen 29fb557e24
Temporarily skip `test_heifsave` on macOS (#2494) 2021-10-21 18:14:40 +01:00
John Cupitt de6e2fef9e add a test for atan2
and tiny formatting changes
2021-10-20 20:40:39 +01:00
John Cupitt 444a04e94f formatting, another MCU test 2021-10-08 17:58:17 +01:00
David Manthey 46a67cfab9
Add jpeg restart_interval option. (#2468)
* Add jpeg restart_interval option.

This allows saving a jpeg with MCU restarts.

* Fix code style.  Add description of restart_interval.

* Add a basic test based on output length.

* Update main change log.
2021-10-08 17:33:32 +01:00
John Cupitt 7e8af07c66
Fix flatten clip (#2432)
* fic gtk-doc typenames in cgif

* fix flatten clipping

flatten could produce out of range values if max_alpha was less than
the limit of the numeric range of the format

https://github.com/libvips/libvips/issues/2431
2021-09-13 11:23:02 +01:00
Lovell Fuller f7619cf33e
gifsave: expose bitdepth property (#2429)
Provides control over the maximum number of colours in the output
image palette, making the API more closely match that of pngsave.

Lowering the bitdepth to 7 (from the default value of 8), which
halves the maximum number of colours from 255 to 127, typically
reduces encoding time by ~20%.
2021-09-10 08:57:12 +01:00
John Cupitt b9230edcbe Merge branch '8.11' 2021-08-29 19:13:12 +01:00
Lovell Fuller 1f5d6f6bc9
Add gifsave operation, depends on cgif and libimagequant (#2381) 2021-08-22 18:11:41 +01:00
Kleis Auke Wolthuizen b978ed8e8f
Adapt `TestForeign.test_heifsave` test (#2402)
- `heifsave` defaults to AV1 compression for .avif suffix since commit 8c44863.
- Test lossless compression mode.
2021-08-16 22:25:14 +01:00
John Cupitt 2ca96a3fef add another test for tiff ifd pyramids
test loading from a lower layer
2021-06-29 08:34:42 +01:00
John Cupitt 95bf1367ba fix jpeg tiff pyramid save
we were not copying the quant tables on lower pyr levels correctly

add a test too
2021-06-28 20:24:00 +01:00
Lovell Fuller d1c038c22d svgload: skip images with invalid dimensions 2021-06-28 14:21:40 +01:00
John Cupitt 6804ff61df load non-transparent GIFs as RGB
And GIFs with transparent elements as RGBA. This can make downstream
processing (eg. in vipsdisp) much quicker since it can save a
composite.
2021-06-07 09:54:53 +01:00
Kleis Auke Wolthuizen 25a268c341 Fix CI failures
- Include the rgba image in the teardown of TestForeign.
- Fix merge conflict.
2021-05-03 12:39:40 +02:00
John Cupitt 0eda488c60 make the tiff test less sensitive to rounding 2021-05-01 23:26:28 +01:00
John Cupitt 03f76b73b4 add "premultiply" param to tiffsave
Some programs, like indesign, only work with premultiplied alpha in TIFF. To
make TIFFs which are compatible with these programs, we'll need an extra
TIFF save flag (perhaps premultiply?) to premultiply alpha and save as
EXTRASAMPLE_ASSOCALPHA.

see https://github.com/libvips/libvips/issues/2192
2021-05-01 20:08:06 +01:00
John Cupitt edcdf8af70 rebase add-jp2ktiff on master 2021-04-26 15:16:20 +01:00
John Cupitt 0054c7dafa add some more gifload tests 2021-03-28 13:49:34 +01:00
John Cupitt 69fcf1b9e9
Merge branch 'master' into add-openjpeg 2021-03-27 15:22:13 +00:00
John Cupitt 9cbb4c2cd1
Merge pull request #1709 from libvips/add-libnsgif
Add libnsgif support
2021-03-27 15:10:30 +00:00
John Cupitt 40c020ccd2 more jp2k tests 2021-03-23 17:15:02 +00:00
John Cupitt 2575d963bd add jp2k tests
and buffer load/save
2021-03-20 12:16:10 +00:00
John Cupitt 8d6f90c060 Merge branch '8.10' 2021-03-14 11:03:40 +00:00
Kleis Auke Wolthuizen 62b0939c4b vips2webp: force low duration frames to 100ms 2021-03-13 22:04:37 +01:00
John Cupitt f74d6c795d Merge branch 'master' into add-libnsgif 2021-03-07 14:37:14 +00:00
John Cupitt 2e56828053 Merge branch '8.10' 2021-03-06 11:47:02 +00:00
John Cupitt 48d9c5d0d4 update test suite for new gif loader 2021-02-28 13:50:04 +00:00
John Cupitt 0b74acf7ba add a test for unpremultiply
we actually test vipsthumbnail --linear on an RGBA image, which should
catch everything, hopefully
2021-02-27 15:48:02 +00:00
John Cupitt 679665b403 fix a memleak in vips__correl
and some more tests
2021-02-06 15:42:31 +00:00
John Cupitt 6782769d8c add some more mosaicing tests
to try to pin down the memleak
2021-02-05 17:14:48 +00:00
Lovell Fuller 3ad7363104 heifsave: add option to control subsample_mode
Defaults to no subsampling when Q>90 for consistency with jpegsave.

Deprecate VipsForeignJpegSubsample enum, replace with more generic
VipsForeignSubsample.
2021-01-13 10:01:34 +00:00
Kleis Auke Wolthuizen ae55fd9523 Regenerate AVIF test image with libheif v1.10.0
Saves a few bytes since the software version comment is no longer included in the hdlr box.
2021-01-06 12:14:22 +01:00
Kleis Auke Wolthuizen 030bf91815 Save AVIF test image with speed=0
Reduces the size of the image by 6 kB.
2021-01-06 12:14:21 +01:00
Kleis Auke Wolthuizen 6e72b75efa Adapt test suite for AVIF support 2021-01-06 12:14:21 +01:00
John Cupitt 42af1cec36 add vipsload_source
plus small openslideload_source fixes
2020-12-31 19:47:36 +00:00
John Cupitt 233609368b add a test for openslideload_source 2020-12-30 18:01:54 +00:00
John Cupitt 158e9e153a add some more ppm tests 2020-12-26 18:35:11 +00:00
Lovell Fuller 45fd740130 webpload: prevent divide-by-zero when blending pixels
Adds a test case to prevent regression - see commit 6eaf1ed
2020-12-17 20:23:06 +00:00
John Cupitt 3996f3279b fix range clips for casts to and from int
Fix two bugs:

- clip in casts from int32 and uint32 could overflow -- do these as gint64 now

- clip in casts from float to int could overflow since float32 can't
  represent the full range of int32 without losing precision -- do these
  as double

And add some more tests.

Thanks ewelot.

see https://github.com/libvips/libvips/issues/1922
2020-12-09 15:14:59 +00:00
Kleis Auke Wolthuizen ea53660a6b Port Ruby test case to Python 2020-11-23 14:40:59 +01:00
John Cupitt 6894159ad5 fix icc-profiles and dzsave --no-strip
We were not copying metadata down pyramid layers in dzsave, so
--no-strip didn't allow icc profiles on tiles.

Thanks altert

See https://github.com/libvips/libvips/issues/1879
2020-11-11 10:02:46 +00:00
John Cupitt 39899582d4 add tests for tiff pyr save region-shrink flag
we were testing the flag before, but not that the result was correct

see https://github.com/libvips/libvips/issues/1875
2020-11-03 23:44:11 +00:00
John Cupitt 48a2551957 fix TIFF thumbnail of buffer and source
We had dropped a couple of patches.

see https://github.com/libvips/libvips/issues/1815
2020-09-14 17:26:19 +01:00
John Cupitt 6b2079bfd3 update magick metadata naming
IM seem to have changed their rules for naming metadata chunks. They are
now lowercase and ICM is renamed to ICC. Add a simple test too.

See https://github.com/libvips/ruby-vips/issues/246
2020-09-06 12:59:10 +01:00