画像やbusboyを圧縮するimageminを使用する方法画像のミニプラグインに?例えば、ファイルフォームフィールドがexample-imageをコールしている場合、イメージフォームプラグインにそのファイルフォームフィールドをプラグインしてイメージを圧縮できるようにするにはどうすればいいですか?私は画像 <a href="https://github.com/imagemin/imagemin" rel="nofollow">https://github.com/imagemin/imagemin</a></p> <p>フォームを使用して、ユーザーのアップロードは、どのように私は、フォームからのファイルの詳細をプラグインしないときに問題があるを圧縮するには、以下のライブラリを使用したい
私が試した:
REQが急行/ nodejsからである
var filebus = new Busboy({ headers: req.headers }),
promises = [];
filebus.on('file', function(fieldname, file, filename, encoding, contentType) {
var fileBuffer = new Buffer(0),
s3ImgPath;
if (file) {
file.on('data', function (d) {
fileBuffer = Buffer.concat([fileBuffer, d]);
}).on('end', function() {
Imagemin.buffer(fileBuffer, {
plugins: [
imageminMozjpeg(),
imageminPngquant({quality: '80'})
]
}).then(function (data) {
console.log(data[0]);
if (s3ImgPath) {
promises.push(this.pushImageToS3(s3ImgPath, data[0].data, contentType));
}
});
}.bind(this));
}
});
をREQしかし、問題は、私はむしろ、私はS3にアップロードできるファイルのバッファを持っています。私はファイルをbuild/imagesフォルダに置いてはいけません。私は、ファイルのバッファを取得し、圧縮し、そのバッファをs3にアップロードしたいと思います。どのようにしてイメージminを使用して、html形式でファイルアップロードのバッファを取得し、それをs3にアップロードできますか?
あなたがこれまで持っている任意のコードを表示してください。好ましくは、作業サーバとフォームを有するウェブページ。 – tcooc
私はさらに詳しい情報を追加しました –
それを使用してください - https://www.npmjs.com/package/compress-images –