screenshotHandler.js 951 B

1234567891011121314151617181920212223242526272829303132333435
  1. var debug = require('debug')('ylt:screenshotHandler');
  2. var sharp = require('sharp');
  3. var Q = require('q');
  4. var fs = require('fs');
  5. var path = require('path');
  6. var screenshotHandler = function() {
  7. this.findAndOptimizeScreenshot = async function(tmpScreenshotPath, width) {
  8. return sharp(tmpScreenshotPath)
  9. .resize({width: 600})
  10. .jpeg({quality: 85})
  11. .toBuffer();
  12. };
  13. this.deleteTmpFile = function(tmpFilePath) {
  14. var deferred = Q.defer();
  15. fs.unlink(tmpFilePath, function (err) {
  16. if (err) {
  17. debug('Screenshot temporary file not found, could not be deleted. But it is not a problem.');
  18. } else {
  19. debug('Screenshot temporary file deleted.');
  20. }
  21. deferred.resolve();
  22. });
  23. return deferred.promise;
  24. };
  25. };
  26. module.exports = new screenshotHandler();