Ich baue eine Website für mobile Geräte auf, die angular-file-upload.min.js zum Hochladen von Bildern aus einer mobilen Geräte-Bildbibliothek verwendet.angularjs Bild vor dem Upload komprimieren
HTML-Code:
<div>
<div class="rating-camera-icon">
<input type="file" accept="image/*" name="file" ng-file-
select="onFileSelect($files)">
</div>
<img ng-show="fileName" ng-src="server/{{fileName}}" width="40"
style="margin-left:10px">
</div>
Code:
$scope.onFileSelect = function($files) {
for (var i = 0; i < $files.length; i++) {
var file = $files[i];
if (!file.type.match(/image.*/)) {
// this file is not an image.
};
$scope.upload = $upload.upload({
url: BASE_URL + 'upload.php',
data: {myObj: $scope.myModelObj},
file: file
}).progress(function(evt) {
// console.log('percent: ' + parseInt(100.0 * evt.loaded/evt.total));
// $scope.fileProgress = evt.loaded/evt.total * 100.0;
}).success(function(data, status, headers, config) {
// file is uploaded successfully
$scope.fileName = data;
});
}
};
Der Upload ist sehr langsam in mobilen Geräten. Wie kann ich die Datei komprimieren?
wenn Sie nicht native App verwenden Sie auch eine Datei nicht komprimieren kann die meisten Bilder wie jpg so weit bereits komprimiert, wie ich weiß, gibt es nichts du kannst tun. –
Wenn Sie nach Bildbearbeitung vor dem Hochladen suchen, könnte dies helfen: http://stackoverflow.com/questions/2434458/image-resizing-client-side-with-javascript-before-upload-to-the-server –