Imagick::floodFillPaintImage
(Bir sürüm bilgisi bulunamadı; sadece SVN'de olabilir.)
Imagick::floodFillPaintImage — Hedefle eşleşen piksellerin renklerini değiştirir
Açıklama
$dolgu
, float $benzerlik
, mixed $hedef
, int $x
, int $y
, bool $ters
[, int $kanal = Imagick::CHANNEL_DEFAULT
] )Hedefin ve yakın komşularının renk değerini değiştirir. Bu yöntem artık kullanımı önerilmeyen Imagick::paintFloodFillImage() işlevinin yerini almıştır. Bu yöntem, derleme sırasında ImageMagick kütüphanesinin 6.3.8 veya sonraki bir sürümü kuruluysa kullanılabilir.
Değiştirgeler
-
dolgu -
Dolgu rengini içeren bir dizge veya bir ImagickPixel nesnesi.
-
benzerlik -
Renkler arasındaki azami benzerlik. Örneğin bu değere 10 atarsanız, renk kırmızı ise ve kırmızının koyulukları 100 ve 102 ise bu iki renk aynı kabul edilir.
-
hedef -
Boyanacak hedef rengi içeren bir dizge veya bir ImagickPixel nesnesi.
-
x -
Renk değişikliğinin başlatılacağı X konumu.
-
y -
Renk değişikliğinin başlatılacağı Y konumu.
-
ters -
TRUEbelirtilirse hedefle eşlemeyen renkler değiştirilir. -
channel -
Normalde kanal türü sabitlerinden biridir, ancak bitsel işleçler kullanılarak birden fazla kanal belirtilebilir.
Imagick::CHANNEL_DEFAULTöntanımlıdır.
Dönen Değerler
Başarı durumunda TRUE döner.
Örnekler
Örnek 1 - Imagick::floodfillPaintImage() örneği
<?php
/* Yeni bir imagick nesnesi oluşturalım */
$im = new Imagick();
/* kırmızı, yeşil ve mavi tuvaller oluşturalım */
$im->newImage(100, 50, "red");
$im->newImage(100, 50, "green");
$im->newImage(100, 50, "blue");
/* Bunları birbirlerine ekleyelim */
$im->resetIterator();
$combined = $im->appendImages(true);
/* Elde edilen resmi karşılaştırmak için saklayalım */
$combined->writeImage("floodfillpaint_intermediate.png");
/* Boyanacak hedef piksel */
$x = 1;
$y = 1;
/* Boyanacak pikselin rengini öğrenelim */
$target = $combined->getImagePixelColor($x, $y);
/* Hedef pikseli ve aynı renkteki komşu pikselleri siyaha boyayalım */
$combined->floodfillPaintImage("black", 1, $target, $x, $y, false);
/* Sonucu kaydedelimt */
$combined->writeImage("floodfillpaint_result.png");
?>
Yukarıdaki örnek şuna benzer bir çıktı üretir:
