ГлавнаяОперационные системыLinuxКак создавать и редактировать анимированные GIF-файлы из командной строки в Ubuntu

Как создавать и редактировать анимированные GIF-файлы из командной строки в Ubuntu

Анимированные GIF-файлы стали очень популярны в последние несколько лет, и их популярность растет с каждым днем. Не согласны? Подумайте вот о чем: ежедневно на Tumblr публикуется более 23 миллионов GIF-файлов. Очевидно, что у этого формата изображений есть аудитория.

Собладает ли это вас создавать GIF-файлы? Если да, то вам будет приятно узнать, что существуют различные редакторы GIF с графическим интерфейсом, которые работают на разных платформах ОС. Однако если вы используете Linux и ищете инструмент командной строки для этой работы, не ищите дальше: мы обсудим Gifsicle – инструмент, который позволяет легко играть с анимированными GIF-файлами.

Примечание : для всех примеров, упомянутых в этой статье, использовалась версия 1.78 Gifsicle.

Гифка

Gifsicle — это инструмент командной строки для создания, редактирования и получения информации об изображениях и анимации GIF. Согласно официальная веб-страница инструмента, Gifsicle предлагает несколько функций, включая оптимизацию изображений, а также контроль над чересстрочной разверткой, комментариями, циклами и прозрачностью. Он «создает хорошие GIF-файлы: удаляет лишние цвета, использует локальные таблицы цветов только в случае кр

Гифка

мости (локальные таблицы цветов тратят пространство и могут вызывать артефакты при просмотре) и т. д.
»

Загрузка и установка

В Ubuntu (как и в других системах на базе Debian) вы можете легко загрузить и установить инструмент Gifsicle с помощью следующей команды:

sudo apt-get install gifsicle

Кроме того, вы также можете создать его с нуля, используя исходный код, или использовать готовый двоичный файл — оба доступны для загрузки из официальная веб-страница инструмента.

Создать анимированный GIF с помощью Gifsicle

Предположим, у вас есть несколько файлов jpg и вы хотите создать из них анимированный файл gif. Вот как это сделать:

Поскольку команда gifsicleработает только с файлами gif, сначала вам необходимо преобразовать все файлы.jpg в формат.gif с помощью команды convert:

convert [input-file-name].jpg [output-file-name].gif

Если количество файлов jpg велико, вы можете использовать следующую команду для конвертации их всех:

convert '*.jpg[

Загрузка и установка

resized%03d.gif

После завершения преобразования из jpg в gif общая команда для объединения отдельных изображений в окончательный анимированный файл выглядит следующим образом:

gifsicle [speed of animation] [number of times to loop] [input jpgs] > output.gif

В приведенной выше команде «скорость анимации» можно установить с помощью флага --delay, а «количество циклов» можно установить с помощью --loopcountфлаг.

Например, у меня была следующая группа изображений в формате JPG.

Создать анимированный GIF с помощью Gifsicle команда, которую я использовал для создания анимированного GIF-изображения из приведенных выше изображений:

gifsicle --delay=80 --loopcount=forever *.gif>out.gif

А вот out.gif.

создано gifsicle

Обратите внимание, что значение --delayпредставляет собой задержку между кадрами в сотых долях секунды. Кроме того, я использовал «навсегда» в качестве значения флага --loopcount. Это делается для того, чтобы анимация не останавливалась. Вы можете использовать любое целочисленное значение, если хотите, чтобы анимация ограничивалась указанным количеством отсчетов.

Извлечение отдельных кадров

Gifsicle также позволяет легко извлекать отдельные кадры из анимированного GIF-файла. Вот пример того, как я это сделал:

gifsicle out.gif '#0' > first-frame.gif

Приведенная выше команда извлекла первый кадр из анимированного файла out.gif. Я просто продолжал менять целочисленное значение после «#» и имя выходного файла и смог извлечь все кадры из out.gif.

Если количество кадров в анимированном gif довольно велико, и вы хотите извлечь их все, то – вполне понятно – будет непрактично запускать приведенную выше команду снова и снова вручную. В этом случае вы можете запустить команду в цикле из сценария оболочки.

Еще одна вещь, о которой стоит упомянуть: с символом «#» также можно использовать отрицательные значения. Отрицательные значения относятся к кадрам с конца. Например, «#-1» вернет вам последний кадр.

Редактировать анимированный GIF

С Gifsicle вы также можете легко редактировать анимированные GIF-файлы. Например, следующая команда создает новый «out.gif», который представляет собой не что иное, как старый «out.gif», первый кадр которого заменен слиянием «a.gif» и «b.gif»:

gifsicle --delay=80 --loopcount=forever -b out.gif --replace '#0' a.gif b.gif

Аналогично вы можете использовать флаг --deleteдля удаления кадров. Например, следующая команда удаляет первый кадр «out.gif», в результате чего получается «out-new.gif»:

gifsicle out.gif --delete '#0' > out-new.gif

В анимированный GIF-файл можно не только удалять и заменять, но и добавлять новые кадры. Например, --appendпозволяет добавлять кадры в конец анимированного GIF-изображения. Вот пример:

 gifsicle out-new.gif --append a.gif > out-new-appended.gif

Приведенная выше команда добавит кадр «a.gif» к анимированному «out-new.gif» и создаст анимированный «out-new-appended.gif» в качестве вывода.

Вы также можете использовать флаг --insert-before, чтобы добавить кадр (или несколько кадров) в любое место существующего анимированного GIF-изображения.

Преобразование изображения

Gifsicle также предлагает несколько вариантов преобразования изображений. Например, вы можете использовать этот и

Извлечение отдельных кадров

ражений gif. Вы можете использовать флаг --resize [width]x[height], чтобы изменить размер изображения gif до определенной ширины и высоты. На странице руководства команды: «Ширина или высота могут быть подчеркиванием «_». Если аргумент равен widthx_, то выходной GIF масштабируется до ширины в пикселях без изменения соотношения сторон.

Вот как я выполнил операцию изменения размера файла «out.gif»:

gifsicle out.gif --resize 150x_  > out-resize.gif
изменить размер

Приведенная выше команда создала файл с именем «out-resize.gif», который представлял собой не что иное, как измененный размер «out.gif» шириной 150 пикселей.

Заключение

Gifsicle, возможно, не очень популярный инструмент для создания/редактирования GIF-файлов, но он, безусловно, очень полезный. И позвольте мне пояснить: все, что мы здесь обсуждали, — это лишь верхушка айсберга, поскольку этот инструмент предлагает множество функций и опций. Думаю, стоит попробовать — узнайте об этом больше здесь .

Редактировать анимированный GIF

Преобразование изображения

Заключение

ПОХОЖИЕ СТАТЬИ

Популярные записи