Commit Graph

5203 Commits

Author SHA1 Message Date
John Cupitt 5176b4a17e better header sniffing for small files
vips__get_bytes() used to fail if the file was too small for the
allocated buffer, which was a problem for svg, since files can be extremely
small.

This change makes vips__get_bytes() return the number of bytes read, so
the is_a testers can work on files smaller than the max header size.
2018-03-22 12:08:39 +00:00
John Cupitt 5a1ab5968b move svg_ia_a into the base class
feels a bit more logical
2018-03-22 10:43:01 +00:00
John Cupitt 162f541c17
Merge pull request #905 from lovell/svg-is-a
Add is_a support to SVG file class loader
2018-03-22 09:48:04 +00:00
Lovell Fuller 63cab9bc62 Add is_a support to SVG file class loader 2018-03-21 16:55:55 +00:00
John Cupitt fc52754c2a add example compile lines to C docs
see https://github.com/jcupitt/libvips/issues/909
2018-03-21 09:21:55 +00:00
John Cupitt aaac2ad957 more optional mem tracing 2018-03-20 12:40:40 +00:00
John Cupitt c5bf128e39 add "precision" control to canny 2018-03-18 11:12:06 +00:00
John Cupitt 6d570ef0ff more canny cleanups 2018-03-17 22:42:40 +00:00
John Cupitt b4181054b2 cleanups ready for merge 2018-03-17 18:13:43 +00:00
John Cupitt 81a7fb92eb oop 2018-03-17 18:12:14 +00:00
John Cupitt ad13dd2041 add a high-precision path for canny 2018-03-17 18:10:50 +00:00
John Cupitt 3fe9b7abc5 split thresh stuff out of canny 2018-03-16 17:26:06 +00:00
John Cupitt 7328f47333 fix atan2 lut in canny 2018-03-16 16:29:52 +00:00
John Cupitt ae82877e66 try a LUT for atan2 2018-03-14 17:19:17 +00:00
John Cupitt 754a1e5419 Merge branch 'master' into add-canny 2018-03-14 14:18:39 +00:00
John Cupitt 206f158a77 Merge branch '8.6' 2018-03-12 18:12:56 +00:00
John Cupitt 878c77a035 better handling of some fonts
fonts with very large overlapping edges copuld clip in `text`, see
https://stackoverflow.com/a/49169747/894763
2018-03-12 18:11:25 +00:00
John Cupitt ca5397e1d3 more reliable magick error message 2018-03-11 21:51:04 +00:00
John Cupitt 08dcf29b10 add vips_rotate()
vips_similarity() was a little hatrd to discover, so add vips_rotate()
as a more obvious name for it
2018-03-10 18:45:39 +00:00
John Cupitt 5834779ac6 Merge branch 'master' into add-canny 2018-03-10 15:13:49 +00:00
John Cupitt a1418b8f72 docs 2018-03-09 17:08:38 +00:00
John Cupitt 0a05dd4304 Merge branch '8.6' 2018-03-09 16:37:10 +00:00
John Cupitt 29e05dabaf icc_import attaches the input profile if used
icc_import can take a fallback input profile in case the embedded one is
broken or missing. If we use the fallback profile, this change attaches
it to the output image.

This means that icc_import will always output an image with the icc
profile that was used to import it. This helps to make the behaviour of
`thumbnail` more consistent.

See https://github.com/jcupitt/libvips/issues/152
2018-03-08 13:11:54 +00:00
John Cupitt 6e0e31a534 Merge branch '8.6' into add-canny 2018-03-05 15:21:30 +00:00
John Cupitt 6fae79b60d Merge branch '8.6' 2018-03-05 15:09:08 +00:00
John Cupitt 178c2f399a oops, dropped a ! 2018-03-05 15:03:49 +00:00
John Cupitt 20d840e6da fix a crash with delayed load
If a delayed load failed, it could leave the pipeline only half-set up.
Sebsequent threads could then segv.

Set a load-has-failed flag and test before generate.

See https://github.com/jcupitt/libvips/issues/893
2018-03-05 14:42:09 +00:00
John Cupitt 84810a6c5c update notes 2018-03-05 08:21:51 +00:00
John Cupitt 6f3708c814 Merge branch 'master' into add-canny 2018-03-04 18:46:04 +00:00
John Cupitt 7f5b0b94c3 Merge branch '8.6' into add-canny 2018-03-04 18:45:59 +00:00
John Cupitt 881a10380e Merge branch '8.6' 2018-03-04 18:45:51 +00:00
John Cupitt eefb2dad98 improve rounding in convi intize
We were rounding up with ceil() when intize-ing convolution masks.
However, the vector path has a true range of (1.0, -1.0], so a mask with
1.0 as the max (for example) was actually triggering the overflow detector
and falling back to the C path.

Round up with ceil(x + 1) instead, so 1.0 (for example) will be mapped
to 0.5 and won't overflow.
2018-03-04 18:30:25 +00:00
John Cupitt bca2418d9a Merge branch 'master' into add-canny 2018-03-04 15:31:19 +00:00
John Cupitt e7a5a8af4a Merge branch '8.6' 2018-03-04 15:31:08 +00:00
John Cupitt 6cff74b602 vips_image_write() could crash if called twice
two writes in a row could trigger a crash in some circumstances, thanks
@dirceupj

see https://github.com/jcupitt/ruby-vips/issues/156
2018-03-04 15:14:06 +00:00
John Cupitt 8b2da0acb3 Merge branch '8.6' 2018-03-03 10:36:29 +00:00
John Cupitt e1cac22176 oop missing AC_DEFINE for libjpeg 2018-03-03 10:25:15 +00:00
John Cupitt bc0b8ba5c1 sobel done 2018-02-28 22:51:31 +00:00
John Cupitt bf70c49fa5 add a fast uchar sobel 2018-02-27 18:19:07 +00:00
John Cupitt d5aabaa23e Merge branch 'add-canny' of github.com:jcupitt/libvips into add-canny 2018-02-27 12:08:15 +00:00
John Cupitt 4a59fa652c make vips_sobel()
cut out of vips_canny()
2018-02-26 18:33:20 +00:00
John Cupitt b07a7c60b7 Merge branch 'master' into add-canny 2018-02-26 09:26:22 +00:00
John Cupitt aa53f632e7 doc polish 2018-02-23 09:32:14 +00:00
John Cupitt 2349dcf110 oops, forgot to enable jpg 2018-02-22 16:34:01 +00:00
John Cupitt a9b4aeb13a Merge branch '8.6' 2018-02-21 19:01:43 +00:00
John Cupitt 529c8247a5 Merge branch 'master' into add-canny 2018-02-19 15:49:27 +00:00
John Cupitt e7a0d98364 revise docs slightly 2018-02-14 14:52:50 +00:00
John Cupitt a9b343f29a use pkg-config to find libjpeg
fall back to FIND_JPEG if we have to, see

https://github.com/jcupitt/libvips/issues/431
2018-02-12 13:31:49 +00:00
John Cupitt bbe42e13fa version bump 2018-02-12 12:39:53 +00:00
John Cupitt 0365e3403e add double threshold to canny
and some more tuning
2018-02-10 16:07:21 +00:00