Lovell Fuller
b3d6e94984
Optimisation for integral factors: favour shrink over affine
2016-02-03 17:48:22 +00:00
Lovell Fuller
5c9c17f1f6
Switch from libvips' C to C++ binding
...
Requires upgrade to libvips 8.2.1
2016-02-03 17:48:22 +00:00
Lovell Fuller
11329d5e09
Expose control of the number of open files in libvips' cache.
...
Breaks API of existing cache method.
Disable libvips cache for I/O tests.
2016-02-03 17:48:22 +00:00
Lovell Fuller
61b86744d7
Ensure 16-bit input images work with embed option #325
2015-12-23 20:46:49 +00:00
Lovell Fuller
32c4b9eff1
Allow SIMD vector unit to be toggled on/off #172
...
Currently defaults to off but future versions may default to on
2015-12-12 09:11:50 +00:00
Lovell Fuller
58e6368525
Ensure embedded ICC profiles output with perceptual intent #321
2015-12-06 20:24:17 +00:00
Lovell Fuller
01a1377972
Include cmath header for clang #301
2015-11-22 09:39:42 +00:00
Lovell Fuller
8a3098604c
Remove experimental code that could prevent anti-alias filter
2015-11-21 23:37:44 +00:00
Lovell Fuller
3dbedf1fb6
Match g_malloc/g_free for make benefit glorious nation of Windows
...
Remove C++ standard lib from Windows packaging
2015-11-21 22:51:32 +00:00
Lovell Fuller
0ae619dfc5
Remove stray win32 library that was causing segfaults
...
Explicit int cast to prevent 'loss of precision' warnings
Remove unnecessary semver checking from I/O tests
2015-11-21 22:18:39 +00:00
Lovell Fuller
05dd191e17
Ensure 16-bit+alpha input images work with vips_premultiply #301
...
Improves SVG support as *magick serves these as 16-bit
Add automated tests for SVG and 16-bit+alpha PNG inputs
2015-11-21 20:21:34 +00:00
Lovell Fuller
5842da22d8
Merge pull request #306 from dacarley/negate
...
Add negate operation to invert all pixel values.
2015-11-17 20:45:09 +00:00
David Carley
3af62446fc
Implements greyscale thresholding
2015-11-17 12:15:34 -06:00
David Carley
33a175eafb
Implements negation.
2015-11-17 10:18:59 -06:00
Lovell Fuller
5dfeaa9fd1
Ensure gaussian blur is applied before lbb interpolator #289
2015-11-16 08:26:35 +00:00
Lovell Fuller
84fd1caa46
Switch default interpolator to bicubic #289
...
Only use gaussian blur for non-linear interpolators
Improves performance of bilinear by ~15%
Add liborc to the packaged build to improve bicubic perf
Add examples of the various interpolation methods
Add bilinear vs bicubic to perf tests
2015-11-15 22:04:31 +00:00
Lovell Fuller
2678d761ba
Use FreeCallback to support mixed Windows runtime libs #152
2015-11-14 13:58:05 +00:00
Lovell Fuller
ede2ee9ce3
Use Persistent wrapper to prevent GC of input Buffer #152
...
Avoids memcpy of input and output Buffer objects
Improves Buffer and Stream performance by ~3%
2015-11-14 11:24:15 +00:00
Lovell Fuller
20f468991f
Start to use libvips 8.1.0+ features #152
...
Use native (un)premultiply
Support normalise on Windows
2015-11-12 22:14:53 +00:00
Lovell Fuller
58d9e0fef7
Pre-extract rotate should not swap width/height #296
2015-11-11 22:34:30 +00:00
Lovell Fuller
05cec013fe
Ensure support for more Linux flavours
...
Add docker-based packaging tests
2015-11-09 08:37:30 +00:00
Lovell Fuller
f4cbbd7b79
Ensure Windows CI uses x64
2015-11-07 20:22:17 +00:00
Brandon Aaron
25e5f27785
add corner gavity support
2015-10-27 15:10:10 -04:00
Brandon Aaron
79470d2e07
EXIF Orientation tags 2 and 4 were flipping instead of flopping
2015-10-16 15:41:40 -04:00
Chris Riley
ce2d7b8efc
Update pipeline.cc
...
In the upgrade to nan v2 that was part of v0.11.2 the baton values for blurSigma, sharpenFlat, and sharpenJagged were being cast to int32_t causing blur(sigma) and sharpen(radius, flat, jagged) to fail with "parameters out of range". This patch casts these baton values to doubles.
2015-09-06 12:29:07 -04:00
Lovell Fuller
409d15c624
Support EXIF Orientation removal in libvips v8.1.0
...
See #189 and jcupitt/libvips@fbe321e
2015-08-24 21:48:38 +01:00
Lovell Fuller
4e67a5025a
Use malloc for Nan::NewBuffer owned data
...
GC results in free() rather than delete[]
Add plenty of new valgrind suppressions
2015-08-24 16:14:49 +01:00
Lovell Fuller
b7e0a6f277
Upgrade to nan v2 #246
...
Provides support for io.js v3 and Node v4
2015-08-23 21:36:48 +01:00
Lovell Fuller
01435977de
Blur and sharpen ops always convolve
...
Partial revert of 36ac882
2015-08-12 07:25:14 +01:00
Lovell Fuller
36ac8828f2
Gamma correction and premultiply do not mix
...
Skip premultiply for fast blur/sharpen
Automate gamma correction tests
2015-08-11 21:51:22 +01:00
Lovell Fuller
de333eb02d
Add PPA details for Ubuntu LTS
...
Remove Mac OS from preinstall script - please use homebrew
2015-07-16 09:28:54 +01:00
Lovell Fuller
d303703dc5
Allow override of EXIF Orientation tag #189
...
Clear Orientation when rotate/flip/flop are used
2015-07-13 20:00:33 +01:00
Lovell Fuller
642e5687b6
Guard against unexpected overlay band format #97
2015-07-11 22:56:18 +01:00
Lovell Fuller
2ec845b083
Create normalize/blur/sharpen operations
...
Reduces pipeline by ~100 LOC
2015-07-11 21:44:39 +01:00
Lovell Fuller
b8885c1faa
Auto-width and height calcs now round instead of floor
...
I think this will better match people's expectations
2015-07-03 15:21:28 +01:00
Lovell Fuller
321e0f2bfe
Add 'icc' raw profile data to metadata #129
2015-06-29 21:27:23 +01:00
Lovell Fuller
6ac47c1ef8
Add raw EXIF data to metadata response
...
Copy metadata input buffer to match pipeline
Prevents possible metadata segfault under load
2015-06-28 23:35:40 +01:00
Lovell Fuller
86490bedfb
Add 'clone' method to snapshot an instance
...
Cloned instances share a common input
Allows multiple output Streams to use a single input Stream
2015-06-28 14:21:02 +01:00
Lovell Fuller
1091be374e
Alpha compositing: support grey+alpha src and non-alpha dst
2015-06-02 14:51:08 +01:00
Lovell Fuller
36be0453dd
Refactor internal 'resize' to more apt 'pipeline'
...
Refactor 'composite' C to C++ 'operations'
2015-06-01 16:33:26 +01:00
Lovell Fuller
f19b6c48ca
Skip normalise operation for images with one colour
...
It didn't play nicely with premultiplication
2015-06-01 14:21:02 +01:00
Lovell Fuller
8832ae0bf9
Add private maxColourDistance for functional tests
...
Switch MSE-based tests to use it
Remove experimental MSE-based compare API
2015-06-01 14:21:02 +01:00
Daniel Gasienica
ef8db1eebf
Premultiply alpha channel to avoid dark artifacts during tranformation
...
Add `Sharp.compare(file1, file2, callback)` function for comparing images
using mean squared error (MSE). This is useful for unit tests.
See:
- https://github.com/jcupitt/libvips/issues/291
- http://entropymine.com/imageworsener/resizealpha/
2015-06-01 14:21:02 +01:00
Lovell Fuller
c792a047b1
Ensure libvips version requirement
...
Should improve debugging, e.g. #222
2015-06-01 14:21:01 +01:00
Daniel Gasienica
64f7f1d662
Add experimental overlayWith
API
...
Composites an overlay image with alpha channel into the input image (which
must have alpha channel) using ‘over’ alpha compositing blend mode. This API
requires both images to have the same dimensions.
References:
- http://en.wikipedia.org/wiki/Alpha_compositing#Alpha_blending
- https://github.com/jcupitt/ruby-vips/issues/28#issuecomment-9014826
See #97 .
2015-06-01 14:21:01 +01:00
Lovell Fuller
fa8f06f07d
Include C standard library for 'atoi' #228
...
Xcode 6.3 appears to no longer do this
2015-05-31 19:05:18 +01:00
Lovell Fuller
e07a105b7c
Test availability of __has_feature macro
2015-05-11 11:54:53 +01:00
Lovell Fuller
4f72dcbf54
Verify platform/compiler compatibility #178 #214
2015-05-11 10:46:47 +01:00
Lovell Fuller
33782d3c83
Embed alpha image on non-transparent background #204
2015-04-29 20:14:45 +01:00
Lovell Fuller
d1fc0591a5
Silence Windows compiler warnings #19
2015-04-21 14:39:37 +01:00