From e0d622d347590ce183c0ac848d2a333cda5f238f Mon Sep 17 00:00:00 2001 From: Kleis Auke Wolthuizen Date: Fri, 28 Jul 2017 22:02:30 +0200 Subject: [PATCH] Skip shrink-on-load when trimming (#887) (#888) --- src/pipeline.cc | 4 ++-- test/fixtures/alpha-layer-2-ink.jpg | Bin 0 -> 37330 bytes .../expected/alpha-layer-2-trim-resize.jpg | Bin 0 -> 6308 bytes test/fixtures/index.js | 1 + test/unit/trim.js | 14 ++++++++++++++ 5 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 test/fixtures/alpha-layer-2-ink.jpg create mode 100644 test/fixtures/expected/alpha-layer-2-trim-resize.jpg diff --git a/src/pipeline.cc b/src/pipeline.cc index 4396f563..972df00f 100644 --- a/src/pipeline.cc +++ b/src/pipeline.cc @@ -220,12 +220,12 @@ class PipelineWorker : public Nan::AsyncWorker { } // If integral x and y shrink are equal, try to use shrink-on-load for JPEG and WebP, - // but not when applying gamma correction or pre-resize extract + // but not when applying gamma correction, pre-resize extract or trim int shrink_on_load = 1; if ( xshrink == yshrink && xshrink >= 2 && (inputImageType == ImageType::JPEG || inputImageType == ImageType::WEBP) && - baton->gamma == 0 && baton->topOffsetPre == -1 + baton->gamma == 0 && baton->topOffsetPre == -1 && baton->trimTolerance == 0 ) { if (xshrink >= 8) { xfactor = xfactor / 8; diff --git a/test/fixtures/alpha-layer-2-ink.jpg b/test/fixtures/alpha-layer-2-ink.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ca96a1af43351d14e775de5587e61ee7b0a9ace1 GIT binary patch literal 37330 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 G@xK8qIS{-6 literal 0 HcmV?d00001 diff --git a/test/fixtures/expected/alpha-layer-2-trim-resize.jpg b/test/fixtures/expected/alpha-layer-2-trim-resize.jpg new file mode 100644 index 0000000000000000000000000000000000000000..aaa548a74d9bce3e87553fd9f54ac9031ab25065 GIT binary patch literal 6308 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