PHP 8.3.0 RC 6 available for testing

Imagick::paintFloodfillImage

(PECL imagick 2 >= 2.1.0, PECL imagick 3)

Imagick::paintFloodfillImageChanges the color value of any pixel that matches target

警告

此函数在 Imagick 3.4.4 中被 废弃,强烈建议不要应用此函数。

说明

public Imagick::paintFloodfillImage(
    mixed $fill,
    float $fuzz,
    mixed $bordercolor,
    int $x,
    int $y,
    int $channel = Imagick::CHANNEL_DEFAULT
): bool

Changes the color value of any pixel that matches target and is an immediate neighbor. As of ImageMagick 6.3.8 this method has been deprecated and Imagick::floodfillPaintImage() should be used instead.

参数

fill

ImagickPixel object or a string containing the fill color

fuzz

The amount of fuzz. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.

bordercolor

ImagickPixel object or a string containing the border color

x

X start position of the floodfill

y

Y start position of the floodfill

channel

Provide any channel constant that is valid for your channel mode. To apply to more than one channel, combine channel constants using bitwise operators. 缺省为Imagick::CHANNEL_DEFAULT. 参考此 通道常数列表

返回值

成功时返回 true

add a note

User Contributed Notes 1 note

up
0
mamcia at gmail dot com
12 years ago
Seems that this method doesn't work as expected. Use Imagick::floodFillPaintImage() instead.

<?php
$img
= new Imagick('/tmp/test.png');
$img->floodFillPaintImage('green', 10, 'white', 100, 100, false);
$img->writeImage('/tmp/out.png');
$img->clear();
$img->destroy();
?>
To Top