Intereting Posts
как я могу исключить файлы без папок из этой функции readdir? Могу ли я включить PHP в файл XML? Удаление избыточных разрывов строк с помощью регулярных выражений Основная функция почты (PHP) дополнительный параметр параметра «-f» получить несколько значений флажка Использование регулярного выражения subpattern to вместо использования регулярного выражения 2 раза в php PHP Как сохранить данные из массива в mysql с помощью laravel 5 Где я могу сохранить частичные (представления) в Zend Framework, чтобы быть доступным для всех представлений в моем приложении? Работает ли поисковая система Sphinx (или другой третьей стороны) в моем случае или я должен создать свою собственную? как установить драйвер php mongodb на windows 8 и wamp server? .htaccess url переписать с переменными Как выполнить цикл набора результатов mysql Каковы различия между обратным ходом и одинарной кавычкой? Могу ли я использовать оператор IF в запросе, как указано выше? Проблема обратного вызова жизненного цикла при расширении пользовательского объекта FOSUserBundle разрушить сеанс на закрытии окна?

Как установить цвет обрезки в Imagick?

Я пытаюсь удалить прозрачные области изображения с помощью php с помощью imagick.

Image Magick предлагает метод trim : Imagick :: trimImage

Удалите края, которые являются цветом фона из изображения. Этот метод доступен, если Imagick был скомпилирован против ImageMagick версии 6.2.9 или новее.

Как установить цвет, который может украсить Imagick?

Следующий скрипт устанавливает цвет фона в серый. Однако триггер удаляет синий цвет фона, как вы можете видеть ниже.

 $im = new Imagick( "1.png" ); // Set background color to grey $im->setImageBackgroundColor( new ImagickPixel( "rgb(213,213,213)" ) ); $im->trimImage( 0 ); $im->writeImage('2.png'); 

введите описание изображения здесь

Есть ли способ ограничить цвета отделки?

версия модуля imagict => 2.1.1-rc1

Solutions Collecting From Web of "Как установить цвет обрезки в Imagick?"

Мэтт Гибсонс Подсказка привел меня к правильному решению: http://www.imagemagick.org/Usage/crop/#trim_color

Как уже сказал Мэтт, метод обрезки принимает угловые цвета, чтобы обрезать изображение. Данное решение из документации является обходным путем: они рисуют границу вокруг изображения, прежде чем называть метод обрезки.

 $img = new Imagick("stripes.gif"); // Set the color to trim: $img->borderImage("#FF0000", 1, 1); $img->trimImage(0); $img->setImagePage(0, 0, 0, 0); $img->writeImage("test.jpg");' 

демонстрация

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

 $im->setImageBackgroundColor( #D5D5D5 );