Как использовать Imagick для раскраски плазменного фрактала, который был преобразован в черно-белый с помощью thresholdImage? - PullRequest
0 голосов
/ 27 января 2019

Я пытаюсь использовать Imagick для создания случайного шаблона, который я могу вывести в виде двух цветов: базового цвета и цвета шаблона.

<?php
function generateImage($base_color, $pattern_color)
{
    // create the canvas
    $canvas = new \Imagick();
    $canvas->newPseudoImage(500, 500, 'plasma:fractal');

    // threshold to convert to white and black
    $canvas->thresholdImage(0.5 * \Imagick::getQuantum());

    // blur
    $canvas->blurImage(0, 1);

    // base color
    $canvas->setImageBackgroundColor($base_color);
    $canvas->setImageAlphaChannel(\Imagick::ALPHACHANNEL_SHAPE);

    // pattern color

    // set format to png
    $canvas->setImageFormat('png');
    header('Content-Type: image/png');
    echo $canvas->getImageBlob();
}

generateImage('#009990', '#cc4444');

В настоящее время я могу успешно изменить цвет фона, но это не такуверен, как изменить шаблоны.

...