Commit Graph

1351 Commits

Author SHA1 Message Date
John Cupitt
e715c62e27 Merge branch '8.4' 2016-10-28 16:51:43 +01:00
John Cupitt
a7edd235c4 improve compat with ancient glibs
and fix a tiny threading leak
2016-10-28 16:25:31 +01:00
John Cupitt
ca7b51fb9e revise header get/set
rework header.c

- built-in enum fields, like "interpretation" are handled as enums, not
  ints
- vips_image_get_*() functions always convert to the target type if they
  can
- rename "field" to "name" in the docs
- clarify docs
2016-10-20 12:41:32 +01:00
John Cupitt
75dee18848 Merge branch '8.4' 2016-10-18 14:23:22 +01:00
John Cupitt
d785e56372 fix error detection from DGifCloseFile()
we were not testing the return from `DGifCloseFile()` against `GIF_ERROR`,
causing spurious error reports

see https://github.com/jcupitt/libvips/issues/541
2016-10-18 14:09:18 +01:00
John Cupitt
156b0433d5 add dzsave_buffer
zip only ... see https://github.com/jcupitt/libvips/issues/415
2016-10-15 19:01:34 +01:00
John Cupitt
c90b8be0b8 add tiffsave_buffer
add tests

also some cleanups to foreign include files

see https://github.com/jcupitt/libvips/issues/417
2016-10-15 12:29:14 +01:00
John Cupitt
ded6f17fa8 fix up new buffer.c
and make getpoint() use the threading system
2016-10-14 09:00:21 +01:00
John Cupitt
c5c3d48da7 version bump for new cycle 2016-10-13 11:43:46 +01:00
John Cupitt
ccfe4cb215 seems to work?
needs stress testing still

see https://github.com/jcupitt/libvips/issues/535
2016-10-10 15:12:12 +01:00
John Cupitt
dff0960e5f fix error message for metadata get
if the type of the metadata item didn't match theh gtype you were
fetching to, the error message was wrong
2016-09-30 08:54:46 +01:00
John Cupitt
246089dc82 bump version 2016-09-27 11:23:57 +01:00
John Cupitt
d3cafb3a9f seems to work
add @centre option for downsampling, see

https://github.com/jcupitt/libvips/issues/504
2016-09-10 10:31:33 +01:00
John Cupitt
591d4472a9 notes on vips-properties changes 2016-09-08 12:45:50 +01:00
John Cupitt
d54df515b8 add some tests 2016-09-08 10:41:01 +01:00
John Cupitt
7e535f6c42 seems to work
still needs tests for gm overlap mode
2016-09-07 10:12:04 +01:00
John Cupitt
57e1423d57 Merge branch 'master' into windows-unicode 2016-09-05 13:12:06 +01:00
John Cupitt
c522dae625 Merge branch 'master' into try-round-to-nearest 2016-09-05 13:07:40 +01:00
John Cupitt
271d8656e9 use round() rather than rint() where appropriate
rint() rounds to nearest even, rather than nearest ... in some cases,
like geometry transforms, we want strict nearest
2016-08-20 12:59:41 +01:00
John Cupitt
5376a93866 Merge branch '8.3' 2016-08-19 16:22:09 +01:00
John Cupitt
314042ea9d better gif transparency handling
we were testing (x == 1), we should have tested (x & 0x1), thanks
diegocsandrim

see https://github.com/jcupitt/libvips/issues/502
2016-08-19 16:11:45 +01:00
John Cupitt
d89dd8d073 add unicode tiff open on windows
also fix make dist,
2016-08-17 10:06:40 +01:00
John Cupitt
1f403a4add first attempt
seems to all work, test it a bit more

see https://github.com/jcupitt/libvips/issues/491
2016-08-15 15:45:26 +01:00
John Cupitt
5df5793457 done!
all tests done, all pass with magick6 and magick7
2016-08-14 18:39:40 +01:00
John Cupitt
9143bda915 Merge branch 'master' into add-magick7 2016-08-14 10:25:03 +01:00
John Cupitt
933080a265 Merge branch 'master' of github.com:jcupitt/libvips 2016-08-13 16:47:06 +01:00
John Cupitt
866cfd5ce3 rename bootstrap.sh as autogen
necessary for snapcraft
2016-08-05 14:52:34 +01:00
John Cupitt
40f01fdb2b Merge branch 'master' into add-magick7 2016-08-04 14:15:46 +01:00
John Cupitt
c658332215 vips_conva() done and working
remove im_conva() nest, add tests
2016-08-03 18:29:50 +01:00
John Cupitt
2e8f14c6a5 Merge branch 'master' into rewrite-convf 2016-08-01 15:08:45 +01:00
John Cupitt
b0e3035590 small cleanups to svgz support 2016-08-01 14:28:35 +01:00
John Cupitt
5637971a36 support --strip for pngsave 2016-07-31 10:34:12 +01:00
John Cupitt
b5781a5760 Merge branch '8.3' 2016-07-30 10:57:40 +01:00
John Cupitt
88148318eb fix performance regression
the extra check on bandfmt in sizeof() in 8.3.2 was causing some performance
problems ... move the check to file read, so we only do it once
per image, not once per pixel or scanline

thanks Lovell!
2016-07-30 10:51:54 +01:00
John Cupitt
71fb52afa0 Merge branch 'master' into add-magick7 2016-07-27 08:49:39 +01:00
John Cupitt
e2eb1b8c12 better gif loader
- transparency was broken if image had no extension block
- load image to memory, test for transparency and mono/colour, write 1,
  2, 3, or 4 band image to output, depending on what we found
2016-07-26 16:19:28 +01:00
John Cupitt
12a32b23f1 Merge branch 'master' into add-magick7 2016-07-25 12:40:43 +01:00
John Cupitt
e939103936 Merge branch 'master' into add-worley 2016-07-24 14:47:33 +01:00
John Cupitt
c469bb3983 perlin sort-of works 2016-07-24 11:46:42 +01:00
John Cupitt
5bbeac7eff Merge branch '8.3' 2016-07-21 07:42:09 +01:00
John Cupitt
3efee94e19 fix possible out of bounds read in tiff2vips
reading a malformed tiff file from a buffer could trigger out of bounds
read

thanks Matt Richards
2016-07-21 07:40:33 +01:00
John Cupitt
dac671439c kind-of working 2016-07-19 10:57:21 +01:00
John Cupitt
7cd49e53b2 vips_convasep() done
starting vips_conva()
2016-07-10 12:25:22 +01:00
John Cupitt
a5d9cf204c seems to work, needs more testing 2016-07-08 17:56:30 +01:00
John Cupitt
df81a6fe24 almost there 2016-06-30 14:59:20 +01:00
John Cupitt
93a55310d3 compiles 2016-06-23 15:00:26 +01:00
John Cupitt
65105a9442 upsize with something other than nearest
vips_resize() uses to just use nearest when upsizing, following standard
practice in repro. This is often unfortunate for image processing, where
small nearest upsizes will produce obvious aliasing.

It now picks a VipsInterpolate which corresponds (roughly) to the
selected VipsKernel and uses that with affine for any upsizing.
2016-06-22 10:33:08 +01:00
John Cupitt
11b136b2df pyvips8 can create new metadata
previously it tried to lookup the type of the field in set(), now if
OK if there's no field there already
2016-06-17 11:27:13 +01:00
John Cupitt
f3326c8126 better vips_resize() for cubic/linear/nearest
vips_resize() used to do most of a downsize with vips_shrink() and the
final 200 - 300% with vips_reduce(). This was correct for lanczos2/3,
but not right for linear/cubic, which need more shrink and less
reduce to avoid aliasing.

This patch makes vips_resize() leave the final 100 - 200% to
vips_reduce() for linear/cubic, and leave everything to reduce for
nearest.
2016-06-16 09:46:02 +01:00
John Cupitt
a5bef08d4a better reducev multiplication
more accurate, no slower

add more tests too
2016-06-15 13:56:19 +01:00