Javascript 增加亮度后,使用ng file upload重新上载图像
我有一个按钮“添加照片”,它使用ng file upload上传图像,但上传后我创建了一个方法,可以更改图像的亮度并将图像保存在dataUrl中。现在,问题是覆盖上传文件夹中已经存在的图像。如何覆盖它Javascript 增加亮度后,使用ng file upload重新上载图像,javascript,angularjs,node.js,mean-stack,ng-file-upload,Javascript,Angularjs,Node.js,Mean Stack,Ng File Upload,我有一个按钮“添加照片”,它使用ng file upload上传图像,但上传后我创建了一个方法,可以更改图像的亮度并将图像保存在dataUrl中。现在,问题是覆盖上传文件夹中已经存在的图像。如何覆盖它 //Function for uploading photos using ng-file-upload $scope.uploadPhotos = function(photos, errFiles) { var total_photos; $scope.house_ima
//Function for uploading photos using ng-file-upload
$scope.uploadPhotos = function(photos, errFiles) {
var total_photos;
$scope.house_images = [];
$scope.photos = photos;
$scope.errFiles = errFiles;
angular.forEach(photos, function(photo) {
console.log("photo====>",photo);
$scope.img_to_canvas();
photo.upload = Upload.upload({
url: '/api/v1/flatmate/upload-images',
data: { 'photo': photo }
});
photo.upload.then(function(response) {
$scope.house_images.push(response.data[0]);
$timeout(function() {
photo.result = response.data[0];
});
}, function(response) {
if (response.status > 0)
$scope.errorMsg = response.status + ': ' + response.data;
}, function(evt) {
photo.progress = Math.min(100, parseInt(100.0 *
evt.loaded / evt.total));
});
});
console.log("images", $scope.house_images);
console.log($scope.photos);
};
$scope.brightness = function(slider_model){
var slider = slider_model;
var image = document.getElementById('image');
var canvas = document.createElement("CANVAS");
var context = canvas.getContext('2d');
var x = 0;
var y = 0;
context.drawImage(image,x,y);
console.log(context);
var imageData = context.getImageData(x,y,canvas.width,canvas.height);
var data = imageData.data;
console.log(data);
for (var i = 0; i < data.length ; i+= 4) {
data[i] += 5; //RED
data[i + 1] += 5; //GREEN
data[i + 2] += 5; //BLUE
}
console.log(data);
context.putImageData(imageData, x, y); //draws up the image.
data = null;
imageData = null;
var dataUrl = canvas.toDataURL();//image saved in dataUrl variable.
// console.log("dataUrl", dataUrl);
document.getElementById('image').src = dataUrl;
}
//使用ng文件上传上传照片的函数
$scope.uploadPhotos=函数(照片、文件){
var total_照片;
$scope.house_images=[];
$scope.photos=照片;
$scope.errFiles=errFiles;
角度。forEach(照片、功能(照片){
log(“photo==>”,photo);
$scope.img_to_canvas();
photo.upload=upload.upload({
url:“/api/v1/flatmate/上传图像”,
数据:{'photo':photo}
});
照片。上传。然后(功能(响应){
$scope.house_images.push(response.data[0]);
$timeout(函数(){
photo.result=response.data[0];
});
},功能(回应){
如果(response.status>0)
$scope.errorMsg=response.status+':'+response.data;
},函数(evt){
photo.progress=Math.min(100,parseInt(100.0*
evt.loaded/evt.total);
});
});
console.log(“images”,$scope.house_images);
console.log($scope.photos);
};
$scope.brightness=功能(滑块\ U型){
var slider=slider_模型;
var image=document.getElementById('image');
var canvas=document.createElement(“canvas”);
var context=canvas.getContext('2d');
var x=0;
var y=0;
上下文。drawImage(图像,x,y);
console.log(上下文);
var imageData=context.getImageData(x,y,canvas.width,canvas.height);
var数据=imageData.data;
控制台日志(数据);
对于(变量i=0;i
为什么不删除现有文件并保存最新文件?这也可以,但您可以给我看一些代码。您可以将dataUrl转换为文件并上载var brighterImageFile=upload.dataUrltoBlob(dataurl,名称);Upload.Upload({…,文件:brighterImageFile,…})