Вопрос

Я использую ImageMagick, чтобы изменить размер загруженных файлов, но, когда они обрабатывают, я хочу показать вращающееся колесо GIF для пользователя, где обычно будет миниатюра.Я обслуживаю около 7 размеров больших пальцев и хотел бы, чтобы колесо осталось в этом размере 32x32 в середине, это просто немного.

Что мне нужно знать, может ли я сделать вышеупомянутое пока сохранить анимацию

Пример:

Это изображение: Это изображение

начнется с этого размера Этот размер

с анимацией

Это было полезно?

Решение

Есть решение в PHP Witch, я использую для водяных знаков GIF анимированные изображения .... Это создает черный Bacground, положите изображение на него, а затем поставьте водяной знак ...

watermarkpath = 'path to wathermarkimage.jpg|gif|png';
$imagepath= 'path to the image';     
$watermark = new Imagick($watermarkpath);
 $GIF = new Imagick();
 $GIF->setFormat("gif");

$animation = new Imagick($imagepath);
foreach ($animation as $frame) {

    $iWidth = $frame->getImageWidth();
    $iHeight = $frame->getImageHeight();
    $wWidth = $watermark->getImageWidth();
    $wHeight = $watermark->getImageHeight();

    if ($iHeight < $wHeight || $iWidth < $wWidth) {
        // resize the watermark
        $watermark->scaleImage($iWidth, $iHeight);

        // get new size
        $wWidth = $watermark->getImageWidth();
        $wHeight = $watermark->getImageHeight();
    }

    $bgframe = new Imagick();
    $bgframe->newImage(($iWidth), ($iHeight + 80), new ImagickPixel('Black'));
    $bgframe->setImageDelay($frame->getImageDelay());


    $x = ($iWidth) - $wWidth - 5;
    $y = ($iHeight + 80) - $wHeight - 5;


    $bgframe->compositeImage($frame, imagick::COMPOSITE_DEFAULT, 0, 0);
     $bgframe->flattenImages();
    $bgframe->compositeImage($watermark, imagick::COMPOSITE_OVER, $x, $y);
     $bgframe->flattenImages();
    $GIF->addImage($bgframe);
}



$GIF->writeimages($imagepath,true);
.

Другие советы

Проверьте эту скрипку, он может содержать то, что вы хотите: http://jsfiddle.net/tgdfb/1/

Он использует jQuery, но должно быть легко адаптируемо ...

Закончился делать это вручную Photoshop после того, как не смог найти автоматический способ сделать это через ImageMagick.Я нашел флаг «Coalesce», но не так много.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top