mirror of
https://github.com/lovell/sharp.git
synced 2026-02-11 09:06:15 +01:00
Add unflatten operation to create an alpha channel (#3461)
This commit is contained in:
@@ -550,7 +550,9 @@ class PipelineWorker : public Napi::AsyncWorker {
|
||||
if (baton->medianSize > 0) {
|
||||
image = image.median(baton->medianSize);
|
||||
}
|
||||
|
||||
// Threshold - must happen before blurring, due to the utility of blurring after thresholding
|
||||
// Threshold - must happen before unflatten to enable non-white unflattening
|
||||
if (baton->threshold != 0) {
|
||||
image = sharp::Threshold(image, baton->threshold, baton->thresholdGrayscale);
|
||||
}
|
||||
@@ -560,6 +562,11 @@ class PipelineWorker : public Napi::AsyncWorker {
|
||||
image = sharp::Blur(image, baton->blurSigma);
|
||||
}
|
||||
|
||||
// Unflatten the image
|
||||
if (baton->unflatten) {
|
||||
image = sharp::Unflatten(image);
|
||||
}
|
||||
|
||||
// Convolve
|
||||
if (shouldConv) {
|
||||
image = sharp::Convolve(image,
|
||||
@@ -1460,6 +1467,7 @@ Napi::Value pipeline(const Napi::CallbackInfo& info) {
|
||||
// Operators
|
||||
baton->flatten = sharp::AttrAsBool(options, "flatten");
|
||||
baton->flattenBackground = sharp::AttrAsVectorOfDouble(options, "flattenBackground");
|
||||
baton->unflatten = sharp::AttrAsBool(options, "unflatten");
|
||||
baton->negate = sharp::AttrAsBool(options, "negate");
|
||||
baton->negateAlpha = sharp::AttrAsBool(options, "negateAlpha");
|
||||
baton->blurSigma = sharp::AttrAsDouble(options, "blurSigma");
|
||||
|
||||
Reference in New Issue
Block a user