繁体   English   中英

Node.js / AngularJS:将图像文件缩小到特定的文件大小

[英]Node.js/AngularJS: Shrink image files to specific file size

使用MEAN环境,我想将网站用户上传的图像文件(.gif / .png / .jpg)自动缩小到特定的文件大小(例如2 MB)。 是否有可用的node.js模块,使我能够使用以下代码:

SomeModule.shrinkImage('MyHugeImage.jpg','2MB')
.then()
[...]

除了graphicsmagick的minify函数(我必须根据所需的文件大小即时计算出最小化因子)之外,我还没有发现任何现成的东西。 可能在客户端(使用AngularJS)或服务器端(Node.js模块)上发生,我不在乎。 有什么建议吗?

我认为ng-image-resize可以为您提供帮助。

  • 使用bower或npm将此模块添加到您的项目中。

    例如:Bower安装angular-images-resizer。

  • 将其包含在您的应用中。

    angular.module('app',['images-resizer']);

  • 然后只需将服务添加到您的代码中并开始调整图像大小即可:

    angular.module('app', function ($document, $log, $scope, resizeService) { resizeService .resizeImage('resources/imageToResize', { size: 100, sizeScale: 'ko' // Other options ... }) .then(function(image){
    // Add the resized image into the body var imageResized = document.createElement('img'); imageResized.src = image; $document[0].querySelector('body').appendChild(imageResized); }) .catch($log.error); // Always catch a promise :)

请访问https://github.com/FBerthelot/angular-images-resizer了解更多详细信息。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM