Есть блок, в котором содержится картинка:
<div class="image-block">
<img src="https://hsto.org/getpro/habr/post_images/dde/292/490/dde292490b55a8c0824ecc6cc038f999.png" alt="картинка">
</div>
При загрузке картинки, она будет проходить проверку на соответствие размеру 1490х400px. Если размер больше, то картинка загружается. Затем мне нужно дать пользователю возможность обрезать эту картинку под размер, указанный выше, если данная картинка больше, чем 1490х400px. Каким образом это можно сделать?
Подробно расписывать не буду, но вкратце схема такая:
HTML:
<div class="image-block" data-image="https://hsto.org/getpro/habr/post_images/dde/292/490/dde292490b55a8c0824ecc6cc038f999.png">
</div>
Javascript:
$(document).ready(function() {
$('.image-block').each(function(i, el) {
var imageBlock = $(this);
var imageUrl = imageBlock.data('image');
var image = new Image();
image.src = imageUrl;
image.onload = function() {
if (image.width > 1490 && image.height > 400) {
var resize = false;
// взаимодествие с пользователем по необходимости ресайза
// если он хочет отбрезать, то resize=true
// если нужны дополнительные параметры для ресайза, получаем их здесь
if (resize) {
$.ajax({
url: 'resizer.php',
// остальные параметры, необходимые для ресайза
success: function(data) {
imageBlock.html('<img src="' + data.resizedUrl + '" />');
}
});
} else {
imageBlock.html('<img src="' + imageUrl + '" />');
}
} else {
// размеры изображения меньше требуемых
}
};
});
});
PHP (файл resizer.php)
В этом файле нужно будет с помощью функций работы с изображениями обработать исходный файл - то есть обрезать его согласно необходимым параметрам, сохранить в новый файл и сформировать абсолютную ссылку к нему. Результат выдать в виде
echo json_encode(['resizedUrl' => 'url обрезанного изображения']);
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости