ライブラリでは、スケーリングのパラメータがmaxSize
で、これは両方のディメンションのうち最も長いものに適用されます。一次元で拡大縮小する回避策は、所望の高さまたは幅の結果を得るために元の画像サイズに基づいてmaxSize
を計算することによってonSubmitted
コールバックで手動でscaleImage()
を実行することですFineUploaderサムネイルのサイズを1次元(つまり、maxSizeではなくmaxHeightまたはmaxWidth)に調整します。
onSubmitted
コールバックの内部でaddFiles()
を使用すると別のonSubmitted
イベントがトリガーされることがあります。 addFiles()
を使用してサムネイルを追加すると、UIリストにサムネイルが表示され、別のonSubmitted
がトリガされ、別のサムネイルが生成されてループを継続します。
IはuploadStoredFiles()
が別onSubmitted
イベントをトリガすることなく、サムネイルなどを示すことなく、呼び出されたとき(240個の画素のmaxHeightと320個のピクセルののmaxWidth)によって再訓練サムネイルを生成し、別S3バケットにサムネイルをアップロードする必要がありますUIファイルリストの「重複」エントリ。 Fine-Uploaderでこれを行う最善の方法は何ですか?
いくつかのサンプルコード:
function makeThumbnail() {
// FIXME to avoid duplicate, put this in the compression success
var thumbnailPromise = uploader.scaleImage(id, {
maxSize: 123,
quality: 45,
customResizer: !qq.ios() && function (resizeInfo) {
return new Promise(function (resolve, reject) {
pica.resizeCanvas(resizeInfo.sourceCanvas, resizeInfo.targetCanvas, {}, resolve)
});
}
});
thumbnailPromise.then(
function (blob) {
console.log(URL.createObjectURL(blob));
uploader.addFiles(blob);
},
function (err) {
}
);
}
この「サムネイル」を生成するときに、新しい 'File'または' Blob'を 'addFiles'に提出しますか? –
これは 'scaleImage'のPromiseから来ています。私が間違っていなければ、それはブロブです。私はいくつかのコードで質問を更新しました。 – dtgq