我需要将多个图像上传到服务器,但在上传之前,必须在客户端压缩而不会丢失质量(使用jQuery)。
有没有办法获得每张图片的宽度和高度?
<script type="text/javascript">
$(document).ready(function() {
$("#Upload").click(function() {
var formData = new FormData();
var image = new Image();
var totalFiles = document.getElementById("fileUpload").files.length;
for (var i = 0; i < totalFiles; i++) {
var file = document.getElementById("fileUpload").files[i];
formData.append("fileUpload", file);
}
$.ajax({
type: "POST",
url: '/Ajaximage/Upload',
data: formData,
dataType: 'json',
contentType: false,
processData: false,
success: function(response) {
//alert('succes!!');
},
error: function(error) {
//alert("Failed");
}
});
});
});
</script>
答案 0 :(得分:0)
在您使用ajax调用的Web服务上收到文件后。将它转换为System.Drawing.Image对象。如果是System.Drawing.Image对象,可以使用“高度”和“宽度”属性获取图像的高度和宽度。
通过压缩,我认为你的意思是调整图像大小 试试这个功能
awk '
$1 ~ /^(sed|sort)$/ {
print "\n ```"
while ($1 ~ /^(sed|sort)$/) {
sub(/^[ \t]*/, " ")
print
if (!getline) {
print " ```\n"
exit
}
}
print " ```\n"
}
1'
会有轻微的质量损失,但会保持宽高比