nodejs批量处理图片


var gm = require(‘gm‘);
var imageMagick = gm.subClass({ imageMagick : true });
var path = require(‘path‘);
var fs= require(‘fs‘);

var imgDir = path.join(process.cwd()+‘/public/img‘);
    var resize = function(file){
        imageMagick(file)
        .resize(750, 450) //加(‘!‘)强行把图片缩放成对应尺寸150*150!
        .autoOrient()
        .write(file, function(err){
            if(err){
                return res.end(‘error|‘+err.message);
            }
            res.sendFile(file)
        });
    }

    var readDir = function(fileDir){
        fs.readdir(fileDir,function(err,files){
            if(err) return console.log(err);
            files.forEach(function(file){
                var filePath = fileDir+‘/‘+file;
                fs.stat(filePath,function(err,stats){
                    if(stats.isDirectory()){
                        readDir(filePath)
                    }else{
                        if(/(\.jpg|\.png)$/i.test(filePath)){
                            resize(filePath)
                        }
                    }
                })
            })
        })
    }

    readDir(imgDir);
时间: 2024-10-10 19:43:36

nodejs批量处理图片的相关文章

ps批量处理图片

刚刚有朋友问,ps咋做批量动作呢,其实特别简单,基本一劳永逸,用尺寸做个例子,大家看看就知道了. ps批量处理图片

Photoshop批量处理图片技巧

我所了解的几个少儿编程软件,其本身的图像处理功能非常基础(这个可以理解),但是实际编程中往往需要制作相对漂亮的卡通形象,理由自然不必说.因此,第三方图像编辑工具,例如Photoshop,的基本应用就是很自然的要求了.本文介绍图像处理过程中常用的两个批量处理图像的技巧. 当然,正规的游戏软件开发中,美工与编程往往是多人合作完成的,一个既会美工又会编程的人其能量不可想像! 一.多张图片快速制作成gif动画 1.将要制作成gif动态图的图片改成同样大小的尺寸,保存在同一个文件夹里,并按想制作成的动作顺

使用convert来批量处理图片

这是个神奇的工具,居然使用命令行就可以这么方便的处理图片.功能有待挖掘. 这个是把图片批量进行 resize 的脚本. #!/bin/sh counter=1 root=mypict resolution=400x300 for i in `ls -1 $1/*.jpg`; do echo "Now working on $i" convert -resize $resolution $i ${root}_${counter}.jpg counter=`expr $counter +

Photoshop 批量处理图片

任何你想重复进行的操作都可以通过创建 Photoshop 批处理程序来完成.例如,你想批量改变图片的大小,就可以通过以下操作来实现. 1.打开任意一张图片,在动作面板中,点击新建按钮 2.在新建动作对话框中更改动作的名称,然后点击记录 3.接下来就是进行你想批量处理的操作,这里就是改变图片大小 4.之后点击动作面板中的停止按钮 5.接着我们点击菜单栏上面的 文件-自动-创建快捷批处理 6.在打开的对话框中点击选择按钮来设置批处理文件存放的位置,设置动作为刚才建立的那个动作 7.在文件夹中找到我们

nodejs 批量修改、删除

1.首页index.js var express = require('express'); var router = express.Router(); /* GET home page. */ router.get('/', function(req, res, next) { res.render('main', { title: 'Express' }); }); module.exports = router; 2.main.html <script> var url; functi

MATLAB 批量处理图片

p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px Courier } p.p2 { margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px Courier; color: #25992d } p.p3 { margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px Courier; min-height: 12.0px } p.p4 { margin: 0.0px 0.0p

shell批量处理图片服务器

最近领导给了个任务,要处理线上图片服务器,不需要的图片把它删除. 思路:首先把线上的要用到的图片从数据库导出来,表里面有图片路径,然后把路径生成一张txt 最后从txt文件里读取每张图片路径,再进行相应处理. 以下是用到的脚本,由于图片比较多,大概有17W张左右,花了2个小时,把脚本贴上来,供以后参考 #!/bin/bash cat /usr/local/src/goodimg.txt | while read line   #goodimg.txt是从数据库导出的图片的txt文本 do dst

[编辑器]Unity批量处理图片

加载图片,将其画在一张RenderTexture中,再新建一张Texture2D,从rt中读出来处理过的数据,再存进原路径中, 比如要将所有图片扩大1.5倍: public static void ChangeSize(params string[] paths) { var texture2Ds = AssetDatabase.FindAssets ("t:Texture2D", paths); var retTexture = new Texture2D (1, 1, Textur

nodejs批量导入数据eventproxy(回调函数嵌套解决方案)使用实例

回调函数嵌套解决方案——eventProxy API地址:https://github.com/JacksonTian/eventproxy 1.安装eventproxy 执行npm install eventProxy. 2.使用前进行声明,代码如下: var EP = require('eventproxy'); 3.根据API进行相应的方法调用,代码如下: ajax.post('/user/login', { name: '********', pwd: '******', remembe