ImageMagick,如何使用gm库从S3服务器编辑图像



我使用的是ImageMagick和gm,如何使用S3服务器中的图像而不是"test.jpg",它可以很好地处理本地pc中的图像,但不能处理S3服务器

     gm('test.jpg')
        .resize(200, 200)
        .stream('jpg', function (err, stdout, stderr) {
            res.setHeader('Content-Type', 'image/jpg');
            stdout.pipe(res);
        });

但当我使用S3图像url时,它不起作用

gm(full image url in S3 server)
    .resize(200, 200)
    .stream('jpg', function (err, stdout, stderr) {
        stdout.pipe(res);
    });

我也试着把它读成流

var readStream = fs.createReadStream(full image url);
    gm(readStream)
        .resize(200, 200)
        .stream('jpg', function (err, stdout, stderr) {
            stdout.pipe(res);
        });

试试看:

var request = require('request');
gm(request(full_url_to_s3_image), 'test.jpg')
    .resize(200, 200)
    .stream(function (err, stdout, stderr) {
        res.setHeader('Content-Type', 'image/jpg');
        stdout.pipe(res);
    });

最新更新