(PECL imagick 2 >= 2.0.1, PECL imagick 3)
Imagick::distortImage — Çeşitli yöntemlerle görüntüyü bozunuma uğratır
sığdır bağımsız değişkeninde true belirtilmedikçe eski
ve yeni görüntüler arasında boyut farkı olmaksızın çeşitli yöntemlerle
görüntüyü bozunuma uğratır.
sığdır bağımsız değişkeninde true belirtildiği takdirde
bozunuma uğratılan görüntü başlangıcı, genişlik ve yüksekliği ayarlanarak
yeni görüntüye sığdırılmaya çalışılır. Ayrıca, çoğu durumda, kaynak
görüntünün sanal başlangıcı eşleme sırasında hesaba katılır.
Bu yöntem, derleme sırasında ImageMagick kütüphanesinin 6.3.6 veya sonraki bir sürümü kuruluysa kullanılabilir.
yöntembağımsız_değişkenlerBozunum yönteminin bağımsız değişkenleri.
sığdır
true belirtildiği takdirde kaynağın bozunmuş hali yeni görüntüye
sığdırmaya çalışılır.
Başarı durumunda true döner.
Hata durumunda bir ImagickException istisnası oluşur.
Örnek 1 - Imagick::distortImage() örneği
Görüntüyü bozunuma uğratıp tarayıcıda görüntüler.
<?php
/* Yeni nesneyi oluşturalım */
$im = new Imagick();
/* Yeni checkerboard örüntüsünü oluşturalım */
$im->newPseudoImage(100, 100, "pattern:checkerboard");
/* Görüntü biçemi PNG olsun */
$im->setImageFormat('png');
/* Yeni görünür alanları şeffaf yapalım */
$im->setImageVirtualPixelMethod(Imagick::VIRTUALPIXELMETHOD_TRANSPARENT);
/* Matlığı etkin kılalım */
$im->setImageMatte(true);
/* Bozunuma uğratılacak noktalar */
$controlPoints = array( 10, 10,
10, 5,
10, $im->getImageHeight() - 20,
10, $im->getImageHeight() - 5,
$im->getImageWidth() - 10, 10,
$im->getImageWidth() - 10, 20,
$im->getImageWidth() - 10, $im->getImageHeight() - 10,
$im->getImageWidth() - 10, $im->getImageHeight() - 30);
/* Görüntüyü bozunuma uğratalım */
$im->distortImage(Imagick::DISTORTION_PERSPECTIVE, $controlPoints, true);
/* Görüntüyü çıktılayalım */
header("Content-Type: image/png");
echo $im;
?>Yukarıdaki örnek şuna benzer bir çıktı üretir: