ImageMagick Imagick::setImageDelay

(PECL imagick 2, PECL imagick 3)

Imagick::setImageDelay — 이미지 지연 설정


설명

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

이미지 지연을 설정합니다. 애니메이션 이미지의 경우 다음 프레임을 표시하기 전에 이미지의 이 프레임이 표시되어야 하는 시간입니다.

지연은 이미지의 각 프레임에 대해 개별적으로 설정할 수 있습니다.


매개변수

delay
이미지가 표시되어야 하는 'ticks'으로 표시되는 시간입니다. 애니메이션 GIF의 경우 초당 100틱이 있으므로 값이 20이면 20/100초, 즉 1/5초가 됩니다.

반환 값

성공하면 true를 반환합니다.


오류/예외

오류가 발생하면 ImagickException이 발생합니다.


Examples

예제 #1 Imagick :: setImageDelay()로 애니메이션 GIF 수정

                  
<?php

// Modify an animated Gif so that it's frames are played at a variable speed,
// varying between being shown for 50ms down to 0ms, which will cause the frame
// to be skipped in most browsers.
$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);

?>