Tom Lokhorst
76c41eaf05
Expose libjpeg optimize_coding flag ( #1265 )
2018-06-21 18:12:10 +01:00
Lovell Fuller
54a71fc142
Fix tint op by ensuring LAB and allowing negative values #1235
...
Add test cases for more tint colours and input interpretations
2018-05-23 20:51:47 +01:00
Rik Heywood
dbac4b9a63
Add tint operation to set image chroma
2018-04-11 20:05:48 +01:00
Andrea Bianco
875937e3d8
Expose libvips' median filter operation ( #1161 )
2018-03-17 10:52:44 +00:00
Andrea Bianco
f86ae79fdb
Expose angle option in tile feature ( #1121 )
2018-02-18 20:00:08 +01:00
Marcel
d599d1f29e
Expose linear transform feature of libvips ( #1024 )
2018-02-04 10:36:04 +00:00
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
965a97105e
Default TIFF predictor to horizontal to match libvips' behaviour
2017-10-19 19:40:07 +01: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
99076edc89
Default PNG output to adaptiveFiltering=false, compressionLevel=9
...
PNG is mostly used for logos and line art, so these defaults will
produce the smallest files for most output most of the time.
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
Yves Bos
d8765f955d
Allow xres and yres to be set for TIFF output ( #828 )
2017-06-03 10:52:09 +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
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
YvesBos
4cd3b66761
Add support for squashing TIFF output to 1-bit ( #783 )
2017-04-26 17:47:29 +01:00
Kristo Jorgenson
f8e72f443d
Expose TIFF compression and predictor options ( #738 )
2017-03-29 12:12:04 +01: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
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
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
Matt Hirsch
5c5d74a903
Add joinChannel and toColourspace/toColorspace operations ( #513 )
2016-08-17 15:42:05 +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
Matt Hirsch
d17e8d3450
Add boolean feature for bitwise image operations ( #501 )
2016-07-11 09:51:43 +01:00
Matt Hirsch
83d8847f57
Add extractChannel operation to extract a channel from an image ( #497 )
2016-07-09 16:48:30 +01:00
Kleis Auke Wolthuizen
b69627891d
Add trim operation to remove "boring" edges ( #491 #492 )
2016-07-08 22:19:10 +01:00
Matt Hirsch
65b7f7d7d5
Add bandbool feature for channel-wise boolean operations ( #496 )
2016-07-07 21:03:49 +01:00
Rahul Nanwani
278273b5c3
Add top/left offset support to overlayWith operation ( #473 )
2016-07-05 10:12:02 +01:00
Matt Hirsch
b70a7d9a3b
Add convolve operation for kernel-based convolution ( #479 )
2016-07-04 20:48:00 +01:00
Matt Hirsch
85f20c6e1b
Add greyscale option to threshold operation ( #480 )
2016-07-03 19:32:07 +01:00
Kleis Auke Wolthuizen
2e9cd83ed2
Add support for clipping/cutting out ( #435 ) ( #448 )
...
USAGE: overlayWith('overlayimage.png', { cutout: true } )
2016-06-25 16:48:01 +01:00
lemnisk8
62554b766f
Add support for repeated/tiled overlay image ( #443 )
...
USAGE: overlayWith('overlayimage.png', { tile: true, gravity: northwest} )
When using the tile option, the gravity option is applied to the extracted part of the tiled overlay image.
2016-05-26 16:42:17 +01:00
Lovell Fuller
cdb2894bd9
Use libvips' new lanczos3 kernel as default for image reduce
...
Deprecate interpolateWith method, now provided as an option
2016-05-18 19:57:22 +01:00
Lovell Fuller
b7a098fb28
Break existing sharpen API to accept sigma and improve precision
2016-05-07 20:04:17 +01:00
Felix Bünemann
b224874332
Add support for writing dz format to zip container ( #402 )
...
To enable this you can either use the `.zip` or `.szi` file extensions
or use `.tile({container: 'zip'})` with the `.dzi` extension.
2016-04-08 19:58:13 +01:00
Lovell Fuller
2034efcf55
Add experimental, entropy-based auto-crop
...
Remove deprecated extract API
2016-03-05 12:29:16 +00:00
Lovell Fuller
38ddb3b866
Add support for Zoomify and Google tile layouts
...
Breaks existing tile API
2016-03-03 20:39:38 +00:00
Lovell Fuller
f950294f70
Add ability to extend (pad) the edges of an image
2016-03-03 09:18:11 +00:00
Lovell Fuller
bb37dc1ea6
Expose density metadata; set density of images from vector input
2016-03-01 19:33:54 +00:00
Lovell Fuller
d92ea31858
overlayWith improvements: diff sizes/formats, gravity, buffer input
2016-02-29 15:15:27 +00:00
Lovell Fuller
2675b2265b
Ensure 16-bit input images embed onto alpha background
...
Support gamma correction of images with alpha channel
Favour shrink over affine when reducing by integral factor
2016-02-03 17:48:22 +00: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