Imagick::compositeImage

(PECL imagick 2, PECL imagick 3)

Imagick::compositeImageНакладывает одно изображение на другое

Описание

publicImagick::compositeImage(
    Imagick$composite_object,
    int$composite,
    int$x,
    int$y,
    int$channel = Imagick::CHANNEL_DEFAULT
): bool

Накладывает одно изображение на другое с указанным смещением. Любые дополнительные аргументы, необходимые для алгоритма наложения, следует передавать в setImageArtifact с 'compose:args' в качестве первого параметра и данных в качестве второго параметра.

Список параметров

composite_object

Объект Imagick, содержащий накладываемое изображение.

compose

Оператор наложения. Смотрите Константы оператора наложения.

x

Смещение столбца накладываемого изображения.

y

Смещение строки накладываемого изображения.

channel

Укажите любую константу CHANNEL, которая подходит для вашего режима канала. Для применения более чем к одному каналу объедините константы типа CHANNEL с помощью побитовых операторов. Обратитесь к этому списку констант CHANNEL.

Возвращаемые значения

В случае успешной работы возвращает true.

Примеры

Пример #1 Пример использования Imagick::compositeImage():

Наложение двух изображений с помощью 'математического' метода наложения

<?php

// Эквивалентно запуску команды
// convert src1.png src2.png -compose mathematics -define compose:args="1,0,-0.5,0.5" -composite output.png

$src1 = new \Imagick("./src1.png");
$src2 = new \Imagick("./src2.png");

$src1->setImageVirtualPixelMethod(Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);
$src1->setImageArtifact('compose:args', "1,0,-0.5,0.5");
$src1->compositeImage($src2, Imagick::COMPOSITE_MATHEMATICS, 0, 0);
$src1->writeImage("./output.png");

?>

Смотрите также

To Top