Vor kurzem erstelle ich eine mobile HTML5 -Anwendung. langsam.
Ich fand das LocalResize -Komprimierungsrahmen für lange Zeit im Internet.
Schritt 1: Laden Sie LocalResizeImg herunterLocalResizeImg ist in GitHub platziert. Die Adresse lautet: https://github.com/think2011/localResizeImg.
Schritt 2: Führen Sie LokalResizeImg -verwandte JS in Web Engineering einDeklara localResimg, um es zu komprimieren, kopieren Sie den distalen Ordner im Verzeichnis in das Projekt, und ich stelle ihn in das JS -Verzeichnis ein.
Importieren Sie dann JQuery und LocalResizeImg JS in ihren eigenen JS. wie:
<span style = White-Point: pre> </span> <script src = <c: url value =/js/jQuery/jQuery-1.10.0.min.js/>> </scan style = White-Space: Pre> </span> <skripttyp = text/javaScript src = <c: url value =/js/lrz/distal/lrz.bundle.js/>> </script>Schritt 3: Fügen Sie das Onchange -Ereignis dem Dateifeld der Eingabe Ihres eigenen Uploads hinzu.
<Eingabe type = Datei id = payfile name = myfile style = display: keine;
Implementieren Sie die Komprimierung des Codes in der Filchange -Methode und die asynchrone Übertragung des Base64, das nach dem Komprimieren auf den Hintergrund erzeugt wurde
Funktion filechange (that) {var filepath = $ (that). if (.jpg | .png | .bmp | .jpeg.touppercase (). indexof (ext.toUppercase ()) ==-1) {alert (nur erlaubt JPG, PNG, BMP, JPEG-Format Bild); } // Verwenden Sie die Bildbreite, um 800 zu komprimieren. : <%= Request.getContextPath ()%>/Common/FileUploadPiction, Typ: Post, Daten: {imgdata: rst.base64 // komprimierter Basiswert}, Datentyp: JSON, Cache: Fals E, Async: False, Erfolg: Funktion (Data) {if (Data.success) {alert (data.message); Nachricht ist die Ursache des Upload -Fehlers}}, Fehler: function () {alert (Upload fehlgeschlagen);});});};} Schritt 4: Spring MVC -Controller empfangen Basiswerte im Hintergrund und Parsing und Speichern von Dateien Sun.misc.base64Decoder importieren; Upload (Datei -Upload -Dateiladung) [Params: IMGDATA = +IMGDATA +]); Speichern Sie die aktuelle technische Root -Verzeichnis -Datei ImageFile = neue Datei (IMGPath); ) [1]); }} outputStream.write (Ergebnis); Ergebnis (Falsch, Datei -Upload fehlgeschlagen);} catch (Ausnahme E) {Logler.Error ([FileUpload)] [Fehler: + e +]); ();Ergebnisklasse:
Java.io.Serializable; .Success = Erfolg; SetMessage (String -Nachricht) {this.message = message;} @Override public String toString () {return Ergebnis [Erfolg = + Erfolg +, Message = + Message +];}}Das oben genannte sind alle Schritte.