JaxAdam
@JaxAdam
Junior Full-Stack Developer

Как убрать обрезание изображении в Opencart 3.x?

Добрый день форумчане! Столкнулся с проблемой картинок в Opencart-е. Опенкарт всегда запрашивает размер изображения при загрузке. Хотел бы убрать это функционал. Ибо картинки которые я загружаю разных размеров и фиксированные высота и ширина устраняют возможность адаптивности. К тому же если я в поле 200х200 загружу изображение 200х180 оно заполнит пустые места белым цветом, что весьма нежелательно.

Как дает опенкарт:
5c5d48e5b5242766635200.png
Как должно быть:
5c5d491a494c3970595792.png

Вообщем, как правильно везде убрать ширину и высоту у изображения?
  • Вопрос задан
  • 1814 просмотров
Решения вопроса 2
zoozag
@zoozag
Opencart
1. Вариант
Ищите и убирайте во всех контроллерах, где нужно убарть resize:
$this->model_tool_image->resize
2. Вариант
Поправьте логику ресайза в system/library/image.php
Если я не ошибаюсь, вам будет достаточно заменить:
$this->image = imagecreatetruecolor($width, $height);

на
$this->image = imagecreatetruecolor($new_width, $new_height);

Тогда он просто отскейлит картинку до нужных размеров по одной из сторон. Потестите и подправьте под себе.
2 вариант предпочтительней. Т.к. совсем не ресайзить картинки плохая идея. У вас будут очень тяжелые страницы категорий и т.д.
Ответ написан
Комментировать
@SergeTkach
OpenCart Forever
По мотивам этого вопроса наваял небольшой модификатор Don't Resize Product Images, который отменяет ресайз изображений товара в OpenCart.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы