Sto usando questo pacchetto nodo:Quando si utilizza il pacchetto tagliente nodo per ridimensionare un'immagine e caricarla a s3 è ruotato
https://www.npmjs.com/package/sharp
Io lo uso per ridimensionare un'immagine e poi caricarlo su Amazon S3.
La maggior parte delle immagini viene trovata ma alcune di esse (presumo in base al rapporto di aspetto) vengono ruotate.
C'è un modo per impedire questo o un motivo?
Ecco una copia del codice che sto usando. imageData sono dati presi da un file bucket s3 del caricamento file. Come puoi vedere, non sto chiamando la funzione di rotazione. Esiste comunque la rotazione del "blocco"?
module.exports.resize = function(imageData, width, fileName){
sharp(imageData).resize(parseInt(width), null).toBuffer(function (err, data) {
if (err) throw err;
s3.putObject({
Bucket: aws.bucket,
Key: 'images/' + width + '/' + fileName,
Body: data
}, function (err, data) {
if (err) {
console.log('Failed to resize image due to an error: ' + err);
return {
message: 'Failed to resize image due to an error: ' + err
};
} else {
console.log('s3 image uploaded to ' + 'images/' + width + '/' + fileName);
return {
message: 's3 image uploaded to ' + 'images/' + width + '/' + fileName
};
}
});
});
});
Sarebbe meglio se mostri il tuo codice e l'immagine di prova. –
È possibile che l'immagine abbia dati di orientamento EXIF che non vengono presi in considerazione dal visualizzatore o da libvips (la lib di backup per sharp)? – mikefrey
Come verifico i dati di orientamento EXIF? – jaget