私は gm を使用しており、そのサイズに応じて画像を処理しようとしています。"size" getter にはコールバック関数が必要なため、次の行では size を使用できません。
私がやりたいことは次のようなものです:
function processImage(url) {
var img = gm(this.getImgStream(url));
var width, height;
img.size(function(err, val) {
width = val.width;
height = val.height;
});
// I want to use width here, but it's undefined when this line is executed.
if (width > 500) width = 500;
return img.resize(width)
}
次のサイズ変更メソッドで幅を使用したい。同期的にサイズを取得する方法や、コールバックが完了するのを待つ方法はありますか? ivar はできるだけ長く使用したくありません。