jq上传本地图片判断本地图片分辨率
时间: 2024-10-15 08:09:28 浏览: 28
jquery实现图片上传前本地预览
使用jQuery (jq) 实现上传本地图片并检查其分辨率,通常涉及到前端操作文件流和使用JavaScript库(如FileReader API)来读取图片信息。以下是一个简单的示例:
```javascript
function checkImageResolution(fileInput) {
var file = fileInput.files[0];
if (!file.type.match('image/*')) {
alert('请选择一张图片');
return;
}
var reader = new FileReader();
reader.onload = function(e) {
var imgData = e.target.result;
var canvas = document.createElement('canvas');
var ctx = canvas.getContext('2d');
canvas.width = imgData.width;
canvas.height = imgData.height;
ctx.drawImage(imgData, 0, 0);
var imageWidth = canvas.width;
var imageHeight = canvas.height;
console.log('图片分辨率: ' + imageWidth + 'x' + imageHeight);
// 根据需求进行分辨率判断,例如:
if (imageWidth < 800 || imageHeight < 600) {
alert('建议上传大于800x600像素的图片');
} else {
// 图片尺寸满足要求,继续上传或处理...
}
};
reader.readAsDataURL(file);
}
// 使用时
var fileSelect = document.getElementById('file-input');
fileSelect.addEventListener('change', function() {
checkImageResolution(this);
});
```
在这个例子中,我们首先获取用户选择的文件,然后通过FileReader逐块读取数据,创建一个Canvas元素来解析图像。一旦图像加载到Canvas上,我们可以访问其宽度和高度来计算分辨率。根据实际需要,可以设置特定的分辨率阈值来进行判断。
阅读全文