Magento Расширение обработки изображений - PullRequest
1 голос
/ 19 июня 2011

Есть ли какое-либо расширение, специально предназначенное для цвета заливки, например, модуля. У меня есть тысячи изображений, которые имеют одинаковый размер, но имеют пустое пространство вокруг всего изображения, вместо того, чтобы использовать фотошоп, могу ли я использовать PHP для обработки этого изображения, чтобы иметь другое (коричневый цвет - если это фон) вместо белого. Если есть расширение, пожалуйста, предложите мне.

Заранее спасибо

Ответы [ 4 ]

4 голосов
/ 19 июня 2011

Если вы хотите иметь одинаковый фон для всех изображений, вы можете переопределить класс magento, который применяет цвет фона.

Файл app/code/core/Mage/Catalog/Model/Product/Image.php

Найдите код, который выглядит следующим образом protected $_backgroundColor = array(255, 255, 255); и укажите значение RGB нужного цвета.

3 голосов
/ 19 июня 2011

Проверьте ImageMagick.Я не использовал его именно для того, что вы пытаетесь сделать, но я использовал его для других видов пакетной обработки изображений.Он может быть запущен из командной строки, но также имеет API для нескольких языков программирования.

Для того, что вы пытаетесь сделать, я бы взглянул на опции -fill, -floodfill и -fuzz.http://www.imagemagick.org/script/command-line-options.php#fill

2 голосов
/ 23 июня 2011

Я получил решение для моей проблемы следующим методом.

<?php 

echo $this->helper('catalog/image')->init($_product, 'image')
->constrainOnly(TRUE)
->keepAspectRatio(TRUE)
->keepFrame(FALSE)
->resize(600,null)

?>

Я получил его отсюда.

http://blog.chapagain.com.np/magento-resize-image/

1 голос
/ 19 июня 2011

Вам следует подумать об избавлении от этого пробела, если у вас нет другой причины для этого, например, чтобы масштабировать изображения продуктов.

Лучше всего это сделать с помощью Photoshop, если он у вас есть, если белый абсолютно, определенно белый, тогда вы можете взять верхний левый пиксель и обрезать его.

Другой вариант, который вы можете использоватьВы хотите рассмотреть использование изображений PNG, опять же, это зависит от ваших изображений и навыков в Photoshop, однако вы можете использовать прозрачность в PNG и не иметь границ для ваших изображений.

Кроме того, в Photoshop или ImageMagick вы можете захотетьрассмотреть возможность создания собственных миниатюрных изображений, отдельно от изображения страницы продукта.Это позволит вам применять фильтры, такие как повышение резкости, чтобы получить изображения страниц продукта, которые на голову выше ваших конкурентов.

Как отмечает @jmspldnl, вы можете использовать imagemagick в командной строке, а также расширение php.В командной строке вы можете отработать процесс и объединить множество шагов, когда вас устраивают ваши параметры, вместо того, чтобы заново обрабатывать их в коде php, вы можете использовать 'passthru ()' и запустить то, что вы разработали, из командной строки..

Для продвижения вперед вы можете поместить задание cron, которое отслеживает вашу папку изображений, а также процессы и изображения, которые были изменены / добавлены в последний день.Это упростит загрузку изображений и заставит вашу систему работать.

...