使用MEAN环境,我想自动将网站用户上传的图像文件(.gif / .png / .jpg)缩小到特定的文件大小(例如2 MB)。 是否有任何node.js模块可用,使我能够使用这样的东西:
SomeModule.shrinkImage('MyHugeImage.jpg','2MB')
.then()
[...]
除了graphicsmagick minify功能(我必须根据所需的文件大小动态计算缩小系数),我还没有找到任何开箱即用的东西。可能发生在客户端(使用AngularJS)或服务器端(Node.js模块),我不在乎。建议?
答案 0 :(得分:2)
我认为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了解详情。