nodeJS图像大小增加/减less和裁剪
我正在使用节点gm模块进行像下面的图像操作
gm(req.files.file.path) .rotate('white', parseFloat(body.angle)) .scale(body.mW * 1, body.mH * 1) .crop(body.mW_W * 1, body.mH_W * 1, body.x * 1, body.y * 1) .resize(parseInt(body.w), parseInt(body.h), "!") .quality(1) .setFormat("png") .write(small, function (err) { if (!err) { console.log('Done!'); } else { console.log(err); console.log('error occurred'); } });
实际的尺寸可能是不同的,但我喂养的宽度和高度(也尝试resize
)方法可能是更高或更低的实际尺寸。 正因为如此,我得到的图像,因为它是调整到最终body.w, body.h
dimensions.How如何调整图像,而不会打扰原来的尺寸。
我find了答案,如果有人使用jquery guillotine
或类似的库来select服务器上的图像作物的一部分,请使用下面的代码
var newW = body.imageWidth * body.scale, newH = body.imageHeight * body.scale; gm(req.files.file.path) .rotate('white', body.angle) .resize(newW, newH, '!') .crop(body.w, body.h, body.x, body.y).write(path, function(err){ });