PHP Conference Nagoya 2025

Imagick::setImageDelay

(PECL imagick 2, PECL imagick 3)

Imagick::setImageDelayGörüntü gecikmesini tanımlar

Açıklama

public Imagick::setImageDelay(int $gecikme): bool

Görüntü gecikmesini tanımlar. Canlandırmalı görüntüler için, sonraki kareye geçmeden önce beklenecek süredir.

Nesnedeki her kare için tek tek gecikme süresi belirlenebilir.

Bağımsız Değişkenler

gecikme

Karenin gösterilme süresi 'tikler' ile ifade edilir. Canlandırmalı GIF'lerde 100 tik 1 saniyeye eşittir.

Dönen Değerler

Başarı durumunda true döner.

Hatalar/İstisnalar

Hata durumunda bir ImagickException istisnası oluşur.

Örnekler

Örnek 1 - Imagick::setImageDelay() ile canlandırmalı GIF'te değişiklik yapmak

<?php

// Burada canlanırmalı GIF kare hızı 50ms'den sıfıra kadar değiştiriliyor.
// Bu durumda bazı tarayıcılar bazı kareleri atlayabilir.
$imagick = new Imagick(realpath("Test.gif"));
$imagick = $imagick->coalesceImages();

$frameCount = 0;

foreach (
$imagick as $frame) {
$imagick->setImageDelay((($frameCount % 11) * 5));
$frameCount++;
}

$imagick = $imagick->deconstructImages();

$imagick->writeImages("/path/to/save/output.gif", true);

?>

add a note

User Contributed Notes 1 note

up
-2
fortruth at mabang dot net
14 years ago
the delay time unit is micro-second when 100 is 1s
To Top