Image redimensionner avant de les télécharger sans aperçu javascript
Je veux éviter le téléchargement de gros/lourd des fichiers d'image.
Je préfère HTML5 FileAPI bibliothèque pour ce travail.
Toutes les autres fonctionnalités sont ajoutées (upload, re-commande, etc.), donc, j'ai seulement besoin de l'image-redimensionner la fonction.
CAS:
Sur la page, il y a une entrée pour plusieurs fichiers.
Sur l'entrée de modifier l'événement (lors de l'ajout de fichiers), redimensionner les images et/ou fichiers et de les ajouter à FormData(), puis envoyer le FormData() pour script PHP via ajax.
EXEMPLE:
$('input').on('change',function(){
var formData = resizeImages(this.files[0]);
uploadResizedImages(formData);
});
function resizeImages(files){
formData = new FormData();
//For each image, resize it and append to formData
//resize file part missing....
formData.append('files[]',this);//Appending to formData (this = currently iterated file)
return formData;//Return the formData with resized images
}
Quelqu'un?
Grâce
OriginalL'auteur Bralemili | 2016-02-03
Vous devez vous connecter pour publier un commentaire.
Dans mon expérience, vous ne pouvez pas manipuler l'image sur le côté client de télécharger une image manipulé en contact par l'intermédiaire d'un fichier de saisie dans un formulaire.
La façon dont je l'ai fait ce que vous essayez de le faire dans le passé implique quelques étapes.
https://jsfiddle.net/0hmhumL1/
Lors du téléchargement d'un dataUrl vous augmentez la taille (largeur de bande nécessaire) de l'image manipulé par environ 20% de sorte que vous ne pouvez pas voir les économies que vous cherchez, sauf si vous changez la taille de l'image considérablement.
Ce sur le retour de la DataURL pour objet Blob, ajouter à FormData et ensuite l'envoyer?
Vous cloud le faire
Basé sur votre question précédente. ssi vous changer votre preferredWidth à 1920, la solution serait re taille correctement les images. Je ne suis pas un programmeur php, donc je ne sais pas la réponse, mais ma conjecture serait $_POST puisqu'il n'est pas plus en fait d'un fichier et simplement les données transférées
J'ai essayé cette... cependant, la taille du fichier se termine donc beaucoup plus élevé, avec de la toile...original 37 ko et téléchargé la version par la suite être 387kb... ce qui donne?
OriginalL'auteur QBM5