Commit Graph

2788 Commits

Author SHA1 Message Date
John Cupitt 6a445ea9c8 more vips image read fixing
thanks AFL!
2016-05-17 21:58:52 +01:00
John Cupitt af34f8f3ef more robust vips file read 2016-05-17 19:43:47 +01:00
John Cupitt 1654ac7e5b fix a comment 2016-05-16 14:32:52 +01:00
John Cupitt db11d3b973 allow nested [] in CLI args
this now works:

	vips copy x y.dz[suffix=.jpg[Q=90]]
2016-05-16 11:09:47 +01:00
John Cupitt ffc5279d2f Merge branch 'master' into loadpdf-range 2016-05-15 10:01:27 +01:00
John Cupitt 72b67d0ec2 Merge branch 'master' into no-blank-tiles 2016-05-15 09:48:21 +01:00
John Cupitt a613841a49 oop various fixes
seems to work now
2016-05-13 09:16:34 +01:00
John Cupitt 24a51098b1 compiler warning 2016-05-12 14:54:28 +01:00
John Cupitt f18fbe1fa2 add @n option to pdfload
so you can load many pages at once as a tall strip
2016-05-12 14:13:50 +01:00
John Cupitt 10fcbb6129 Merge pull request #443 from felixbuenemann/remove-jpegsave-quant_table-debug-print
Remove jpegsave default quant_table debug print
2016-05-09 18:44:31 +01:00
Felix Bünemann cb97d3d786 Remove jpegsave default quant_table debug print
This was only ut in for debugging which quant_table is used in the
JCP_FASTEST profile and should've never been committed.
2016-05-09 18:37:00 +02:00
Felix Bünemann 3b7242f743 Fix webpsave alpha_q default value 2016-05-09 13:08:11 +02:00
John Cupitt 143593d6a6 comment reformat 2016-05-09 11:07:48 +01:00
John Cupitt 54e5cb04d3 Merge pull request #434 from felixbuenemann/jpeg-quant-table-option
Add mozjpeg quant_table option to jpegsave
2016-05-09 10:47:27 +01:00
John Cupitt bab11cec1d always build cairo.c 2016-05-09 10:44:32 +01:00
Felix Bünemann 6418ab2307 Extract shared pdfload/svgload code into cairo.c 2016-05-09 00:16:48 +02:00
John Cupitt 38fe936eee Merge remote-tracking branch 'origin/8.3' 2016-05-08 11:09:28 +01:00
John Cupitt f7a6a02ee8 fix giflib4 detection
and a problem in giflib4 error handling
2016-05-08 11:02:21 +01:00
John Cupitt b03ad51ae3 oops, fix error reporting from giflib 2016-05-07 21:01:04 +01:00
John Cupitt 948d1103d4 note more webp tests needed 2016-05-07 19:53:00 +01:00
Felix Bünemann c5fa0e1feb Add mozjpeg quant_table option to jpegsave
This allows to choose from several predefined quantization tables when
libvips is compiled against mozjpeg 3.0+.
Tuning the quantization table helps to improve file size in the higher
quality range and avoid artefacts in the lower range.
2016-05-07 03:13:52 +02:00
John Cupitt c081f51ffc fix a compiler warning 2016-05-04 13:20:19 +01:00
John Cupitt 37c716be89 more webp doc improvements 2016-05-03 09:36:49 +01:00
John Cupitt 1ae92bb15f make optional args into bullets
make docs easier to read
2016-05-02 10:12:37 +01:00
John Cupitt 48ef215479 tiny fixups for the webp commit
just small formatting changes, plus an unneeded var

see

	https://github.com/jcupitt/libvips/pull/430
2016-05-02 09:55:16 +01:00
John Cupitt c88b94cb29 Merge pull request #430 from felixbuenemann/use-webp-advanced-encoding-api
Use WebP Advanced Encoding API and make it tunable
2016-05-01 19:51:12 +01:00
John Cupitt 02821ae9e3 expose @kernel setting for vips_resize()
a new optional arg lets you pick the downsizing kernel
2016-05-01 12:33:49 +01:00
John Cupitt c2d1de9a26 allow mixed zoom and shrink in resize
vips_resize() now allows >1 on one axis, <1 on the other ... previously,
although you could have non-square ratios, you couldn't mix zoom and
shrink
2016-05-01 12:03:13 +01:00
John Cupitt 8a31df3214 only save tiles more than 5 from blank
looks for max absolute difference
2016-04-26 10:06:59 +01:00
John Cupitt 5e933fe8e9 Merge branch 'master' into no-blank-tiles 2016-04-25 09:54:01 +01:00
John Cupitt d11a7960b7 add support for giflib5
gifload.c now works with giflib5, and well as giflib4 ... forced by
ubuntu's switch to giflib5 in 16.04

see https://github.com/jcupitt/libvips/issues/407
2016-04-25 09:29:25 +01:00
Felix Bünemann 874cc8b31b Restore webpsave libwebp-0.1.3 compatility
* Add configure check for libwebp >= 0.1.3
* Add custom memory writer using GNOME memory allocation
* Add various ABI checks and warnings for unsupported features:
** smart_subsample and near_lossless require 0.5.0
** lossless requires at least 0.1.99
2016-04-24 18:28:53 +02:00
Felix Bünemann 0a25f6efca Add alpha_q(uality) webpsave option, fix Q init
This allows to control the fidelity of the alpha channel by allowing
webp to reduce the number of palette entries from 256 at alpha_q=100
to 2 at alpha_q=0. This is most useful with cutout pictures where
something like alpha_q=30 or around 8 levels is usually sufficient
for smooth outlines.

For some reason webp->Q was intiailized to 80 even though the Q option
and libwebp use 75 by default. This was never used, so it's just to
avoid confusion about what default is used.
2016-04-24 18:18:40 +02:00
John Cupitt 699ade0877 Merge branch 'master' into no-blank-tiles 2016-04-24 09:59:04 +01:00
John Cupitt 128480bab6 VipsForeign nickname was wrong
it was set to "file", strangely

see https://github.com/jcupitt/libvips/issues/429
2016-04-23 13:29:42 +01:00
Felix Bünemann c107066c4e Add webpsave near_lossless support, fix Q range
The near_lossless option allows to enable preprocessing for the lossless
mode. This is a boolean instead of an int, because the amount of
preprocessing is controlled using the Q factor parameter which is
otherwise unused in lossless mode. This allows to re-use the quality
setting in existing tools.
2016-04-23 02:00:32 +02:00
Felix Bünemann 58a2616f77 New webpsave option smart_subsample
This enables a high quality RGB to YUV converter in libwebp which
greatly improves the quality of fine details by reducing color bleeding
caused by the 4:2:0 chroma subsampling. This is slower and causes
slightly larger files. See WebPPictureSmartARGBToYUVA in libwebp.
2016-04-23 01:20:41 +02:00
Felix Bünemann f834ea39f6 Add lossy compression "preset" option to webpsave
This allows to tune the lossy webp encoder for certain types of images.
2016-04-22 23:57:07 +02:00
Felix Bünemann 7f70abd4ba Use advanced WebP Encoding API
This switch is required to enable encoder configuration.
2016-04-22 23:57:07 +02:00
John Cupitt 23eaf93867 fix build with graphicsmagick
GM is still using the old page interface of subimage/subrange, IM has
deprecated that in favour of scene/number_scenes

we were accidentally just supporting the new IM system ... this change
adds support for GM as well, plus a configure test to pick one

see https://github.com/jcupitt/libvips/issues/423
2016-04-18 15:21:11 +01:00
John Cupitt 1627440a37 remove a couple of IMAGE
still loads left, of course
2016-04-13 15:00:17 +01:00
John Cupitt 2c646a02e4 better jpeg autorot
jpeg write is more careful about removing exif tags that have been
removed from the image metadata

it failed previously if there were multiple Orientation tags
2016-04-13 08:39:29 +01:00
John Cupitt a7e564ed97 autorot looks in every ifd
some images have multiple orientation tags ... look and remove
orientation tags everywhere
2016-04-12 18:31:19 +01:00
John Cupitt 5b79403ea3 update history comment for premultiply.c 2016-04-11 21:56:27 +01:00
John Cupitt 263b93aaea Merge pull request #420 from lovell/premultiply-bands-4
Ensure premultiply fast-path for RGBA is used
2016-04-11 21:55:02 +01:00
Lovell Fuller 90780d96b8 Ensure premultiply fast-path for RGBA is used.
Add A suffix to PRE_RGBA macro name to clarify use with 4 bands.
2016-04-11 18:31:35 +01:00
John Cupitt 65b9ced6e9 improve arg order
more consistent
2016-04-11 13:23:25 +01:00
John Cupitt 269cbb8641 better mask sizing for lanczos 2016-04-11 13:19:00 +01:00
John Cupitt f58190bccd tag non-int rgb tiff as scrgb
Photoshop uses 0 - 1 and no gamma for float RGB, so we tag float /
complex RGB tiffs as scRGB

thanks Murat
2016-04-11 12:37:48 +01:00
John Cupitt 511a0a7da5 better rounding in reducev orc path 2016-04-10 17:52:51 +01:00