आईओएस 6 जारी किया गया है और मैं फोटो अपलोडिंग का परीक्षण कर रहा हूं।आईओएस 6 और सफारी फोटो अपलोडिंग - फ़ाइल एपीआई + कैनवास + jQuery अजाक्स फ़ाइलें अपलोड और आकार बदलना असीमित रूप से
यह अच्छी तरह से काम करता है, लेकिन 3 जी से अधिक बड़ी छवियों के साथ यह अपेक्षा की जाती है।
फ़ाइल एपीआई और कैनवास के लिए धन्यवाद, जावास्क्रिप्ट का उपयोग कर छवियों का आकार बदलना संभव है। मुझे उम्मीद है कि अगर मैं उन्हें अपलोड करने का प्रयास करने से पहले छवियों का आकार बदलता हूं, तो वे तेजी से अपलोड करेंगे - खुद को एक तेज उपयोगकर्ता अनुभव के लिए उधार देते हैं। स्मार्टफोन प्रोसेसर नेटवर्क की गति से तेजी से तेजी से सुधारने के साथ, मेरा मानना है कि यह समाधान एक विजेता है।
निकोलस छवि का आकार बदलने के लिए एक उत्कृष्ट समाधान की पेशकश की है:
हालांकि, मैं jQuery के अजाक्स के साथ लागू सबसे कठिन समय चल रहा है। किसी भी सलाह या मदद की सराहना की जाती है, क्योंकि यह कोड शायद मोबाइल वेब एप्लिकेशन विकास पोस्ट-आईओएस 6 के लिए बेहद उपयोगी होगा।
var fileType = file.type,
reader = new FileReader();
reader.onloadend = function() {
var image = new Image();
image.src = reader.result;
image.onload = function() {
//Detect image size
var maxWidth = 960,
maxHeight = 960,
imageWidth = image.width,
imageHeight = image.height;
if (imageWidth > imageHeight) {
if (imageWidth > maxWidth) {
imageHeight *= maxWidth/imageWidth;
imageWidth = maxWidth;
}
} else {
if (imageHeight > maxHeight) {
imageWidth *= maxHeight/imageHeight;
imageHeight = maxHeight;
}
}
//Create canvas with new image
var canvas = document.createElement('canvas');
canvas.width = imageWidth;
canvas.height = imageHeight;
var ctx = canvas.getContext("2d");
ctx.drawImage(this, 0, 0, imageWidth, imageHeight);
// The resized file ready for upload
var finalFile = canvas.toDataURL(fileType);
if (formdata) {
formdata.append("images[]", finalFile);
$.ajax({
url: "upload.php",
type: "POST",
data: formdata,
dataType: 'json',
processData: false,
contentType: false,
success: function (res) {
//successful image upload
}
});
}
}
}
reader.readAsDataURL(file);
क्या आपको इसका समाधान मिला है? मैंने पाया है कि कैमरा से सीधे बड़ी छवियों का आकार बदलना या अतीत में कैमरे से लिया गया एक और समस्याग्रस्त है। – NimmoNet