画像の ticks-per-second を設定する

# Imagick::setImageTicksPerSecond

(PECL imagick 2, PECL imagick 3)

Imagick::setImageTicksPerSecond — 画像の ticks-per-second を設定する

### 説明

public function Imagick::setImageTicksPerSecond(int `$ticks_per_second`): bool

アニメーション画像のフレームを表示する時間を調整します。

> 注意:

> アニメーション GIF の場合、この関数は秒間の 'image ticks' の数は変更しません。常に 100 です。 そのかわりに、'ticks per second' を変更し、フレームを表示する時間を変更したように見せます。

> たとえば、各フレームを 20 ticks (1/5 秒) ずつ表示させるようにしているアニメーション GIF に対して、この関数の引数に `50` を渡して呼び出すと、 各フレームの表示時間を 40 ticks (2/5 秒) に変更します。 その結果、元の半分の速さで表示されるようになります。

### パラメータ

`ticks_per_second`

  画像を表示させる時間を ticks per second で表した値。

### 戻り値

成功した場合に `true` を返します。

### 例

例1 Imagick::setImageTicksPerSecond() によるアニメーション GIF の変更

    <?php

    // アニメーション GIF の前半の再生スピードを元の半分に、
    // そして後半の再生スピードを元の倍にします。

    $imagick = new Imagick(realpath("Test.gif"));
    $imagick = $imagick->coalesceImages();

    $totalFrames = $imagick->getNumberImages();

    $frameCount = 0;

    foreach ($imagick as $frame) {
        $imagick->setImageTicksPerSecond(50);

        if ($frameCount < ($totalFrames / 2)) {
            // フレームの表示時間を元の二倍にします
            $imagick->setImageTicksPerSecond(50);
        } else {
            // フレームの表示時間を元の半分にします
            $imagick->setImageTicksPerSecond(200);
        }

        $frameCount++;
    }

    $imagick = $imagick->deconstructImages();

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

    ?>

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open