Commit Graph

5447 Commits

Author SHA1 Message Date
John Cupitt
6013962288 better exif write
only remove exif fields not on the image if we made the exif from the saved exif data on the image
2017-11-27 05:54:10 +00:00
John Cupitt
de7636c66b remove "throw" from c++ autogen tools
and output
2017-11-26 17:55:50 +00:00
John Cupitt
10eef89a7f update c++ bindings 2017-11-26 17:45:04 +00:00
John Cupitt
955a5a97cc sRGB2scRGB uses the colour luts directly
rather than going via a function that clips ... about 2x faster
2017-11-26 16:47:24 +00:00
John Cupitt
406e228c9b vips_resize() is always centre convention
it was corner for downsize, but should be centre to match imagemagick
2017-11-26 15:24:40 +00:00
John Cupitt
3754ddb947 remove centre from resize in thumbnail
thanks kleis
2017-11-26 12:01:30 +00:00
John Cupitt
0363ac6ab9 fix indexed hist combine mode
it now tracks which bins have been inited, so min works
2017-11-25 21:23:10 +00:00
John Cupitt
ee4186ae8f revise resize docs 2017-11-25 15:13:20 +00:00
John Cupitt
7db13412e5 deprecate centre option to resize
it's now centre on upsize, corner on downsize

see https://github.com/jcupitt/libvips/issues/705
2017-11-25 14:22:20 +00:00
John Cupitt
cb128eb258 apply --centre to upsize as well as down
we were just using the --centre flag in resize to influence downsize
behaviour -- use it to set upsize as well

see https://github.com/jcupitt/libvips/issues/705
2017-11-25 12:09:01 +00:00
John Cupitt
bb81113312 add credits 2017-11-24 22:12:41 +00:00
John Cupitt
bb0772da51
Merge pull request #815 from lovell/premultiply-match-types
(Un)premultiply: ~10-15% speedup by matching clipped alpha type with IN/OUT
2017-11-24 22:08:50 +00:00
John Cupitt
bbc2f4e1f8
Merge pull request #816 from lovell/srgb2scrgb-optimise-3-4-band
Colour: ~20% sRGB to scRGB speedup for 3/4 channel images
2017-11-24 21:52:37 +00:00
Lovell Fuller
cac1b5b9c6 ~20% sRGB to scRGB speedup for common 3 and 4 band images 2017-11-24 21:45:00 +00:00
Lovell Fuller
7e23a140c4 ~10% speedup by matching clipped alpha type with IN/OUT
Improves unpremultiply precision for float/double input
2017-11-24 19:20:29 +00:00
John Cupitt
5664a0d9b1 dzsave outputs extra tiles along right and bottom
the deepzoom spec wants tiles to be written along the right and bottom,
even of those tiles contain no new pixels

this patch seems to work, but needs testing

see: https://github.com/jcupitt/libvips/issues/795
2017-11-24 15:54:22 +00:00
John Cupitt
f9f717a843 add VIPS_ONCE and use it everywhere
Lovell's idea: save the function call in the most common case
2017-11-23 08:43:08 +00:00
John Cupitt
8806e7039e
Merge pull request #813 from lovell/sRGB2scRGB-once-unlikely
Colour: ~20% speedup for sRGB to scRGB pixel conversion
2017-11-23 08:10:42 +00:00
Lovell Fuller
cef897ece8 ~20% speedup for sRGB to scRGB pixel conversion
by checking GOnce status with branch expectation
2017-11-23 07:36:19 +00:00
John Cupitt
72a493d2e6 fix build against giflib4 2017-11-22 19:52:40 +00:00
John Cupitt
6a4b249445 add dispose handling
see https://github.com/jcupitt/php-vips/issues/59
2017-11-22 17:37:31 +00:00
John Cupitt
27621733f2 add gif-comment 2017-11-22 13:10:06 +00:00
John Cupitt
c008bdddca gifload reports first delay, not last
many GIFs have a long delay on the final frame
2017-11-22 11:12:11 +00:00
John Cupitt
7aed4c04e7 fix gif-loop metadata
thanks Christian Stocker
2017-11-21 18:06:49 +00:00
John Cupitt
5361903fae make gif delay default to 4
should match imagemagick
2017-11-21 16:08:26 +00:00
John Cupitt
e56282e1fd add gif-loop metadata
see https://github.com/rokka-io/imagine-vips/issues/3
2017-11-21 16:04:18 +00:00
John Cupitt
b611f46d5a better gif delay decode 2017-11-21 15:09:44 +00:00
John Cupitt
d0c7f9d040 fix page-height in gifload
and add support for "gif-delay" metadata item
2017-11-21 11:21:27 +00:00
John Cupitt
8497840d97
Merge pull request #811 from lovell/smartcrop-luminance
Smartcrop: ~19% speedup by getting luminance from LAB instead of LCH
2017-11-21 08:31:53 +00:00
Lovell Fuller
e8b0e455d8 Take luminance value from LAB instead of LCH
Avoids costly atan2 conversion to polar coords
2017-11-20 20:56:45 +00:00
John Cupitt
43288833b9
Merge pull request #810 from lovell/smartcrop-clamp-sigma
Smartcrop: clamp sigma to avoid out of range warnings
2017-11-20 17:41:33 +00:00
Lovell Fuller
caa0988256 Clamp minimum sigma to avoid out of range warnings 2017-11-19 20:22:19 +00:00
John Cupitt
a4b89aa370 credit for affine fixup 2017-11-18 15:11:02 +00:00
John Cupitt
65cfe2e7c0 Merge branch 'master' into fix-affine-jaggies 2017-11-18 15:10:50 +00:00
John Cupitt
2815647ce3 fix background for affine on alpha images
need to convert to ink for premultiplied space
2017-11-18 13:42:00 +00:00
John Cupitt
e179e3b11f premultiply alpha (if necessary) in affine 2017-11-18 10:59:20 +00:00
John Cupitt
cd898c52de
Merge pull request #808 from lovell/prefer-sqrt-to-pow-0.5
Prefer ~10x faster sqrt instead of pow when y=0.5
2017-11-17 22:11:23 +00:00
Lovell Fuller
bb58685d1c Use ~10x faster sqrt instead of pow when y=0.5 2017-11-17 20:24:28 +00:00
John Cupitt
fcec6d639b fix jaggies on the edge of affine output
and add a "background" param
2017-11-17 16:30:25 +00:00
John Cupitt
ef9b23b95a update function list 2017-11-09 15:00:13 +00:00
John Cupitt
2bb7844f4c update docs
some old stuff in examples
2017-11-09 14:53:20 +00:00
John Cupitt
c01afbc559 update docs
the examples page was using the old python binding
2017-11-04 14:50:49 +00:00
John Cupitt
4ea743f5e6 add combine mode to find_indexed 2017-11-03 16:36:09 +00:00
John Cupitt
487c112807 add VIPS_COMBINE_MIN combining mode
for vips_compass()
2017-11-02 12:34:01 +00:00
John Cupitt
55e577a2fb rename nearest as fill_nearest
avoid a clash with the nearest-neighbour interpolator
2017-11-01 15:06:37 +00:00
John Cupitt
cdc286e9d6 switch to float distance calculations
removes dithering effects along edges
2017-11-01 13:16:36 +00:00
John Cupitt
cb37089c9b seems to work 2017-11-01 13:16:36 +00:00
John Cupitt
ae54f35ed1 start tinkering 2017-11-01 13:16:36 +00:00
John Cupitt
d90f2e649d no error for bad page-height in tiffsave
just don't write a toilet-roll image

the error was confusing and easy to trigger by mistake

see https://github.com/jcupitt/libvips/issues/782
2017-10-24 09:39:58 +01:00
John Cupitt
3b75b1e2ac fix gcc7 build
removed exception specs from deprecated C++ binding
2017-10-24 09:31:23 +01:00