PHP 8.4.0 RC2 available for testing

Imagick::optimizeImageLayers

(PECL imagick 2, PECL imagick 3)

Imagick::optimizeImageLayersRemove partes repetidas de imagens para otimizar

Descrição

public Imagick::optimizeImageLayers(): bool

Compara cada imagem com as formas dispostas em GIF da imagem anterior na sequência. A partir disso, tenta selecionar a menor imagem recortada para substituir cada quadro, preservando os resultados da animação. Este método estará disponível se a extensão Imagick tiver sido compilada com a ImageMagick versão 6.2.9 ou superior.

Parâmetros

Esta função não possui parâmetros.

Valor Retornado

Retorna true em caso de sucesso.

Erros/Exceções

Lança uma exceção ImagickException em caso de erro.

Exemplos

Exemplo #1 Usando Imagick::optimizeImageLayers()

Lendo, otimizando e gravando uma imagem GIF

<?php
/* Cria novo objeto Imagick */
$im = new Imagick("test.gif");

/* otimizar as camadas da imagem */
$im->optimizeImageLayers();

/* grava a imagem de volta */
$im->writeImages("test_optimized.gif", true);
?>

Veja Também

add a note

User Contributed Notes 1 note

up
0
f21 dot groups at gmail dot com
11 years ago
In imagick 3.x (have not checked 2.x), this returns an imagemagick object and not a boolean.

<?php

$image
= new Imagick('myanimation.gif');

$image = $image->optimizeImageLayers(); //Does not return a boolean!

$image->writeImage('optimized.gif');
To Top