PHP Conference Nagoya 2025

ImagickDraw::composite

(PECL imagick 2, PECL imagick 3)

ImagickDraw::compositeНакладывает изображение на текущее изображение

Описание

public ImagickDraw::composite(
    int $compose,
    float $x,
    float $y,
    float $width,
    float $height,
    Imagick $compositeWand
): bool
Внимание

Функцию пока не задокументировали; для знакомства доступен только список аргументов.

Накладывает изображение на текущее изображение, используя указанный оператор накладывания, указанную позицию и указанный размер.

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

compose

Оператор накладывания. Одна из констант Оператора накладывания (imagick::COMPOSITE_*).

x

Координата X левого верхнего угла.

y

Координата Y левого верхнего угла.

width

Ширина изображения композиции.

height

Высота изображения композиции.

compositeWand

Объект Imagick, из которого взято композиционное изображение.

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

Функция в случае успешной работы возвращает true.

Примеры

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

<?php
function composite($strokeColor, $fillColor, $backgroundColor) {

$draw = new \ImagickDraw();

$draw->setStrokeColor($strokeColor);
$draw->setFillColor($fillColor);
$draw->setFillOpacity(1);
$draw->setStrokeWidth(2);
$draw->setFontSize(72);
$draw->setStrokeOpacity(1);
$draw->setStrokeColor($strokeColor);
$draw->setStrokeWidth(2);
$draw->setFont("../fonts/CANDY.TTF");
$draw->setFontSize(140);
$draw->rectangle(0, 0, 1000, 300);
$draw->setFillColor('white');
$draw->setfillopacity(1);
$draw->annotation(50, 180, "Lorem Ipsum!");

//Создание объекта изображения, в который можно преобразовать команды рисования.
$imagick = new \Imagick();
$imagick->newImage(1000, 302, $backgroundColor);
$imagick->setImageFormat("png");

//Преобразование команд рисования в объекте ImagickDraw
//в изображение.
$imagick->drawImage($draw);

//Отображение изображения в браузере
header("Content-Type: image/png");
echo
$imagick->getImageBlob();
}

?>

Добавить

Примечания пользователей 1 note

up
0
christian dot reinecke at web dot de
15 years ago
To see some examples how the COMPOSITE_* constants work, see this page:
http://www.imagemagick.org/Usage/compose/#duff-porter
To Top