From 9a4ce9567df8054c6285d76f7c187ba3752a2f52 Mon Sep 17 00:00:00 2001 From: Firela Date: Thu, 16 Jan 2020 00:28:21 +0530 Subject: [PATCH 1/5] refactor isGif --- examples/demo.js | 8 +++++--- examples/lib/defaultHtmlStepUi.js | 7 ++++--- src/util/getImageDimensions.js | 7 +------ src/util/isGif.js | 6 ++++++ 4 files changed, 16 insertions(+), 12 deletions(-) create mode 100644 src/util/isGif.js diff --git a/examples/demo.js b/examples/demo.js index af2a9edc78..985e623fad 100644 --- a/examples/demo.js +++ b/examples/demo.js @@ -4,7 +4,8 @@ var defaultHtmlSequencerUi = require('./lib/defaultHtmlSequencerUi.js'), DefaultHtmlStepUi = require('./lib/defaultHtmlStepUi.js'), urlHash = require('./lib/urlHash.js'), insertPreview = require('./lib/insertPreview.js'), - versionManagement = require('./lib/versionManagement.js'); + versionManagement = require('./lib/versionManagement.js'), + isGIF = require('../src/util/isGif'); window.onload = function () { @@ -270,8 +271,9 @@ window.onload = function () { * @param {string} imageDataURL - The data URL for the image. */ function savePDF(imageDataURL) { - sequencer.getImageDimensions(imageDataURL, function(dimensions, isGIF) { - if (!isGIF) { + sequencer.getImageDimensions(imageDataURL, function(dimensions) { + + if (isGIF(imageDataURL)) { // Get the dimensions of the image. let pageWidth = dimensions.width; let pageHeight = dimensions.height; diff --git a/examples/lib/defaultHtmlStepUi.js b/examples/lib/defaultHtmlStepUi.js index a10467b560..3737fd3d7f 100644 --- a/examples/lib/defaultHtmlStepUi.js +++ b/examples/lib/defaultHtmlStepUi.js @@ -12,7 +12,8 @@ const intermediateHtmlStepUi = require('./intermediateHtmlStepUi.js'), urlHash = require('./urlHash.js'), _ = require('lodash'), mapHtmlTypes = require('./mapHtmltypes'), - scopeQuery = require('./scopeQuery'); + scopeQuery = require('./scopeQuery'), + isGIF = require('../../src/util/isGif'); function DefaultHtmlStepUi(_sequencer, options) { options = options || {}; @@ -362,8 +363,8 @@ function DefaultHtmlStepUi(_sequencer, options) { * */ function updateDimensions(step){ - _sequencer.getImageDimensions(step.imgElement.src, function (dim, isGIF) { - step.ui.querySelector('.' + step.name).attributes['data-original-title'].value = `

Image Width: ${dim.width}
Image Height: ${dim.height}
${isGIF ? `Frames: ${dim.frames}` : ''}

`; + _sequencer.getImageDimensions(step.imgElement.src, function (dim) { + step.ui.querySelector('.' + step.name).attributes['data-original-title'].value = `

Image Width: ${dim.width}
Image Height: ${dim.height}
${isGIF(step.output) ? `Frames: ${dim.frames}` : ''}

`; }); } diff --git a/src/util/getImageDimensions.js b/src/util/getImageDimensions.js index b2323cde24..18382de4cb 100644 --- a/src/util/getImageDimensions.js +++ b/src/util/getImageDimensions.js @@ -1,7 +1,6 @@ const getPixels = require('get-pixels'); module.exports = function getImageDimensions(img, cb) { let dimensions; - let isGIF; getPixels(img, function(err, pixels) { if (pixels.shape.length === 4) { const [frames, width, height] = pixels.shape; @@ -10,8 +9,6 @@ module.exports = function getImageDimensions(img, cb) { width, height }; - - isGIF = true; } else { const [width, height] = pixels.shape; @@ -19,11 +16,9 @@ module.exports = function getImageDimensions(img, cb) { width, height }; - - isGIF = false; } - if (cb) cb(dimensions, isGIF); + if (cb) cb(dimensions); }); }; \ No newline at end of file diff --git a/src/util/isGif.js b/src/util/isGif.js new file mode 100644 index 0000000000..cddfdbe043 --- /dev/null +++ b/src/util/isGif.js @@ -0,0 +1,6 @@ +module.exports = function(url){ + + const toMatch = url.match('data:image/(.*);'); + + return toMatch[1] === 'gif'; +}; \ No newline at end of file From 4cb1a2dff67fb2f2ba4acef81616b24770493f63 Mon Sep 17 00:00:00 2001 From: Firela Date: Thu, 16 Jan 2020 00:35:34 +0530 Subject: [PATCH 2/5] refactor isGif --- examples/demo.js | 1 - 1 file changed, 1 deletion(-) diff --git a/examples/demo.js b/examples/demo.js index 985e623fad..d50a723be1 100644 --- a/examples/demo.js +++ b/examples/demo.js @@ -272,7 +272,6 @@ window.onload = function () { */ function savePDF(imageDataURL) { sequencer.getImageDimensions(imageDataURL, function(dimensions) { - if (isGIF(imageDataURL)) { // Get the dimensions of the image. let pageWidth = dimensions.width; From 20cd888b522525a2a5b3ad345f69711c7558564c Mon Sep 17 00:00:00 2001 From: Firela Date: Thu, 16 Jan 2020 22:42:05 +0530 Subject: [PATCH 3/5] fix isGif func --- src/util/isGif.js | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/util/isGif.js b/src/util/isGif.js index cddfdbe043..c897cb78eb 100644 --- a/src/util/isGif.js +++ b/src/util/isGif.js @@ -1,6 +1,7 @@ module.exports = function(url){ - - const toMatch = url.match('data:image/(.*);'); - - return toMatch[1] === 'gif'; + if(url.match){ + const toMatch = url.match('data:image/(.*);') || 'png'; + return toMatch[1] === 'gif'; + }else + return false; }; \ No newline at end of file From fb72a9eae4c0850a39101e0aa452abdb2bacbcf6 Mon Sep 17 00:00:00 2001 From: Rishabh Shukla <42492389+blurry-x-face@users.noreply.github.com> Date: Sat, 18 Jan 2020 00:06:52 +0530 Subject: [PATCH 4/5] Update isGif.js --- src/util/isGif.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/util/isGif.js b/src/util/isGif.js index c897cb78eb..eda0a22ab0 100644 --- a/src/util/isGif.js +++ b/src/util/isGif.js @@ -1,7 +1,7 @@ module.exports = function(url){ if(url.match){ - const toMatch = url.match('data:image/(.*);') || 'png'; + const toMatch = url.match(/data:image/(.*);/) || 'png'; return toMatch[1] === 'gif'; }else return false; -}; \ No newline at end of file +}; From 068439bc5cab6c063592f1c2fa9f3a2763924a93 Mon Sep 17 00:00:00 2001 From: Rishabh Shukla <42492389+blurry-x-face@users.noreply.github.com> Date: Sat, 18 Jan 2020 00:07:46 +0530 Subject: [PATCH 5/5] Update isGif.js --- src/util/isGif.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/util/isGif.js b/src/util/isGif.js index eda0a22ab0..5e8c29925e 100644 --- a/src/util/isGif.js +++ b/src/util/isGif.js @@ -1,6 +1,6 @@ module.exports = function(url){ if(url.match){ - const toMatch = url.match(/data:image/(.*);/) || 'png'; + const toMatch = url.match(/data:image\/(.*);/) || 'png'; return toMatch[1] === 'gif'; }else return false;