从1个源图像创建2个不同的图像

时间:2014-08-09 15:08:29

标签: node.js graphicsmagick

我试图将我的照片工作流程转换为nodejs。从Lightroom吐出的每个jpg,我想做: 1)没有水印的200x200像素缩略图 2)高度压缩的jpg,与src相同的像素大小,但水印重叠

我的任务是创建缩略图:

    gm(photo.photoPath)

        .size(function (error, size) {
            // I need to know the pixel size of the photo first!
            if (error) {            
                console.log(error);
            } else {

                // Succesfully loaded
                photo.size = size; 
                photo.orientation = size.height > size.width ? 'portrait' : 'landscape';

                var cropSize = size.height < size.width ? size.height : size.width;
                var left = size.height > size.width ? 0 : Math.round((size.width - size.height) / 2);
                .crop(cropSize, cropSize, left, 0)
                .resize(200, 200)
                .unsharp(1, 1, 1.2, 0.05)
                .noProfile()
                .quality(30)
                .write(photo.thumbFile, function (err) {
                    if (!err) {
                        console.log('Thumb aangemaakt als /tn/' + photo.cryptedName);
                    } else {
                        console.log('Problem saving: ' + err);
                    }
                });
            }
        });

基本上这就是我希望我的工作流程:

                      src file from Lightroom
                               |
                               |
                         open file with GM
                          /             \
                         /               \
         Overlay watermark              resize 200x200px
         (transparent png)                     |
                |                              |
                |                          sharpen lightly
                |                              |
                |                              |
                |                              |
 save as /lowquality/xxxx.jpg            save as /thumb/xxxx.jpg

在我打开之后,我仍然需要创建两个独立版本。请帮忙!

0 个答案:

没有答案