Kenric D'Souza
927b77700d
Add gravity support to embed feature ( #1038 )
2017-12-12 19:29:16 +00:00
Lovell Fuller
2a18b9a8f7
Remove centreSampling option, update some expected test fixtures
...
See https://github.com/jcupitt/libvips/issues/705
2017-11-26 13:49:56 +00:00
Lovell Fuller
e0f0baf164
Silence a couple of MSVC type conversion warnings
2017-11-17 20:10:10 +00:00
Lovell Fuller
1fec132dee
Add tilecache before smartcrop to avoid over-computation
2017-11-17 19:53:50 +00:00
Lovell Fuller
3c88c84998
Doc refresh, changelog and dead code removal for #977
2017-10-19 11:05:43 +01:00
Jarda Kotěšovec
d0f66c3734
Switch to libvips' resize, make fastShrinkOnLoad optional ( #977 )
2017-10-19 11:05:43 +01:00
Lovell Fuller
ebc2a741f6
Ensure accessMethod is applied during shrink-on-load
2017-10-19 11:05:43 +01:00
Matthew McEachen
b4d72bd544
Add failOnError option to fail-fast on bad input image data ( #976 )
2017-10-19 11:05:43 +01:00
Lovell Fuller
57946ed672
Upgrade to libvips v8.6.0
...
Expose offset coordinates of strategy-based crop
Switch to Github releases for prebuilt libvips
Move packaging scripts to lovell/sharp-libvips repo
2017-10-19 11:05:43 +01:00
Kleis Auke Wolthuizen
e0d622d347
Skip shrink-on-load when trimming ( #887 ) ( #888 )
2017-07-28 21:02:30 +01:00
Lovell Fuller
49297d6afb
Ensure flip and flop operations work with auto-rotate #837
2017-06-19 23:42:26 +01:00
Yves Bos
d8765f955d
Allow xres and yres to be set for TIFF output ( #828 )
2017-06-03 10:52:09 +01:00
Lovell Fuller
f42a1ceab7
Recalculate residual after adjusting shrink #831
2017-05-30 20:22:15 +01:00
Lovell Fuller
9e39a7fa95
Correct shrink calc, regression introduced in e398b47 #831
2017-05-30 17:16:41 +01:00
Nicolas Coden
99810c0311
Add support for any rotation angle ( #791 )
...
Allow to provide any positive or negative multiple of 90 to `.rotate(...)`.
Negative angles and angles above 360 are converted to valid 0/90/180/270
rotations (0 rotations are still ignored).
Changes:
- [Node] Add `useExifOrientation` internal variable to know if the Exif
orientation must be used instead of the provided angle. This allows to save a
negative angle in the `angle` option, because the `-1` special case is not
needed.
- [Node] Change check for planed-rotation in extract, to prepare a
rotation before extraction: check with both `angle` and `useExifOrientation`
options.
I think this check contains a bit too much logics on rotation options. Maybe
we could move this condition to a dedicated function.
- [C++] Separate `CalculateRotationAndFlip` into two generic functions:
- `CalculateExifRotationAndFlip`: Calculate the angle of rotation and
need-to-flip for the given Exif orientation.
- `CalculateAngleRotation`: Calculate the rotation for the given angle.
One or the other function is used to calculate the rotation, depending on
wether the Exif orientation tag or the provided angle must be used.
- Add unit tests for `-3690`, `-450`, `-90`, `90`, `450`, `3690` and `-3780`,
`-540`, `0`, `180`, `540`, `3780` rotations
- Add `320x240` fixture image for tests.
Unrelated changes (squashed):
- Add ncoden to the list of contributors
2017-05-22 11:08:33 +01:00
Lovell Fuller
0a6d8b37ad
Ensure double to int cast introduced in 4d1a169 is static
2017-05-21 19:05:56 +01:00
Lovell Fuller
e398b471e1
Prevent aliasing by using dynamic values for shrink(-on-load)
2017-05-13 18:46:39 +01:00
Lovell Fuller
36078f9903
Switch to the libvips crop strategy implementations
2017-05-06 14:46:28 +01:00
Lovell Fuller
2f534dc01c
Base maximum output dimensions on limitation of format
2017-05-04 23:20:37 +01:00
Lovell Fuller
c8e59f08ec
Add support for Buffer and Stream-based TIFF output
2017-05-04 16:40:49 +01:00
Lovell Fuller
4d1a1694cd
Improve perf/accuracy of nearest neighbour integral upsample
2017-04-30 20:54:48 +01:00
Lovell Fuller
1169afbe90
Avoid (un)premultiplication for overlay image without alpha channel
...
Add 'premultiplied' boolean attribute to output info, helps test
2017-04-26 21:37:43 +01:00
Lovell Fuller
301bfbd271
Expose libvips warnings via NODE_DEBUG env var
2017-04-26 21:37:43 +01:00
YvesBos
4cd3b66761
Add support for squashing TIFF output to 1-bit ( #783 )
2017-04-26 17:47:29 +01:00
Lovell Fuller
088d36b47b
Add support for TIFF float predictor
2017-04-01 10:08:47 +01:00
Kristo Jorgenson
f8e72f443d
Expose TIFF compression and predictor options ( #738 )
2017-03-29 12:12:04 +01:00
Alice Monday
72f69dda30
Add support for the "nearest" kernel for image reductions ( #732 )
2017-03-14 10:29:23 +00:00
Lovell Fuller
8b5d8a0577
Switch from seq to random access for normalise and 'smart' crop
2017-03-11 19:56:55 +00:00
Lovell Fuller
1aa053ce6f
Create blank image (width, height, channels, background) #470
2017-03-11 11:46:01 +00:00
Lovell Fuller
81f5589411
Add use of 'cc' to improve C++ code style linting
2017-02-11 09:59:23 +00:00
Rahul Nanwani
a1b8efe721
Expose WebP alpha quality, lossless and near-lossless output options ( #685 )
2017-01-19 13:45:32 +00:00
Lovell Fuller
d2455267a8
Allow non-RGB input to embed/extend onto bg with alpha #646
2016-12-11 16:01:21 +00:00
Lovell Fuller
d3c78f825c
Ensure premultiply op occurs before box shrink #605
2016-12-04 18:25:44 +00:00
Lovell Fuller
7231d92d1f
Autoconvert GIF+SVG input to PNG output if no format specified
2016-11-30 22:46:04 +00:00
Patrick Paskaris
6ccccf8c39
Allow use of extend with greyscale input ( #623 )
2016-11-14 22:09:43 +00:00
Patrick Paskaris
bc84d1e47a
Allow PNG and WebP tile-based output in addition to JPEG ( #622 )
2016-11-13 20:36:43 +00:00
Lovell Fuller
a7b024d4fa
Tile-based output filename may not exist, check g_stat return value
2016-11-06 14:31:32 +00:00
Lovell Fuller
9911863441
Expose libvips centre option, mimics *magick +0.5px convention
2016-11-04 18:17:33 +00:00
Lovell Fuller
8717ecc429
Modularise JS source in 'lib' subdirectory.
...
Generate public API documention via jsdoc comments.
2016-11-02 09:25:20 +00:00
Lovell Fuller
3f5e38bb62
Deprecate output format option functions.
...
Access is now via options of existing output format functions.
e.g. use .jpeg({quality: n}) instead of .jpeg().quality(n)
2016-11-02 09:25:20 +00:00
Lovell Fuller
18b9991fe7
Add experimental 'attention' crop strategy
2016-10-12 11:18:58 +01:00
Lovell Fuller
7ada9dbd0d
Changelog update, fix for small leak introduced in 5c5d74a
2016-08-17 20:56:53 +01:00
Matt Hirsch
5c5d74a903
Add joinChannel and toColourspace/toColorspace operations ( #513 )
2016-08-17 15:42:05 +01:00
cmtt
fc2002fbd0
Add alpha channels, if missing, to overlayWith images ( #540 )
2016-08-13 17:19:15 +01:00
Lovell Fuller
e6bfa52b0b
Add raw pixel data support to boolean and withOverlay ops
...
The previously-scattered image opening logic has been refactored to a
single ImageDescriptor struct/Object available to both JS and C++ code
This removed about 150 LOC but more importantly reduces the complexity
of adding/exposing new operations that require an input image.
2016-07-26 23:07:25 +01:00
Lovell Fuller
032bb7e96b
Ensure ICC profiles are removed from PNG output #521
2016-07-21 16:49:27 +01:00
Lovell Fuller
a5bd68ef8c
Recalc after WebP shrink-on-load to avoid rounding errors #508
2016-07-21 15:18:14 +01:00
Matt Hirsch
c39a9b8de9
Prevent boolean errors during extract operation ( #509 ) ( #511 )
2016-07-16 10:56:15 +01:00
Matt Hirsch
15a577863a
Ensure boolean, bandbool, extractChannel ops occur before sRGB conversion ( #504 )
2016-07-13 19:20:50 +01:00
Lovell Fuller
c42fb97419
Refactor pipeline to use common 16-bit detection methods
2016-07-11 23:03:45 +01:00