2016-09-30 6 views
0

https://github.com/rsms/node-imagemagick画像の周りに空白を追加するには? 例元の画像は、私が新しい画像を生成したい、width:300, height:100である原画像が中央にある元のサイズのままwidth: 600, height: 200で、新しいイメージになることを周囲に空白を追加します。..imagemagickの使い方

私はコードの下にしようとしたが、この元の画像になる作ります600 * 200 ...それを解決する方法?

function cropGravity(srcFilePath, dstFilePath, resizeWidth, resizeHeight, quality, gravity) { 
    return new Promise(function (resolve, reject){ 
    im.crop({ 
     srcPath: srcFilePath, 
     dstPath: dstFilePath, 
     width: resizeWidth, 
     height: resizeHeight, 
     quality: quality, 
     gravity: gravity 
    }, function(error, stdout, stderr){ 
     if (error != null) { 
     console.log(error) 
     reject(error); 
     } else { 
     resolve(dstFilePath); 
     } 
    }); 
    }); 
}; 

... 
var resizeWidth = 600; 
var resizeHeight = 200; 
var quality = 1; 
var gravity = 'Center'; 
cropGravity(srcFilePath, dstFilePath, resizeWidth, resizeHeight, quality, gravity) 
+0

私はこれらすべてのブラケットとブレースとカンマを読むことはできませんが、あなたはあなたの背景を設定する必要がありますあなたの '重力'を 'center'に変換し、' extent() '関数を新しいサイズで使用します。 –

+0

返信ありがとう、私はバックグラウンドのparamに関するドキュメントを見つけることができませんし、 'extent()' ??どのように使用するいくつかのコード例を提供しますか? – user1775888

答えて

2

私は本当にnodeを話すことはありませんが、それはおそらく、このようになります。

im.convert(['input.jpg', '-gravity', 'center', '-background','white', '-extent', '600x200','result.jpg'], 
function(err, stdout){ 
    if (err) throw err; 
    console.log('stdout:', stdout); 
}); 
+0

ありがとう! – user1775888

関連する問題