collectionfs では、次の方法で大きな画像のサイズを幅 1200px に変更し、ファイル サイズを縮小するために高さを比例させます。
var createPic = function(fileObj, readStream, writeStream) {
gm(readStream, fileObj.name()).resize(1200).quality(100).autoOrient().stream().pipe(writeStream);
}
たとえば、サイズが 2000x2000 の画像は、実際には 1200x1200 でアップロードされますが、ファイル サイズは大きくなります。理由を説明できますか?また、幅がたとえば 2000px を超える場合にのみ画像のサイズを変更するようにメソッドを変更するにはどうすればよいですか?