Как сделать существующий анимированный цикл GIF несколько раз?


47

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

Какие бесплатные приложения или утилиты командной строки для Mac OS X я могу использовать для этого? Я нашел несколько утилит GIF, которые могут создавать новые анимации, но ни одна из них не позволяла мне изменять свойства существующих.


Имейте в виду, что это также зависит от приложения, которое вы используете для отображения анимированного GIF. Например, отображение анимированных GIF-файлов в Firefox можно изменить с помощью <code> about: config </ code>: <code> image.animation_mode = normal | один раз | нет </ code>
Майк Фицпатрик

1
Вы хотите, чтобы он постоянно зацикливался, чтобы вы изменили файл? Или вы хотите изменить настройки локально на вашем компьютере, чтобы это работало?
Daisetsu

Я хочу изменить файл, а не приложение, отображающее его. Я отредактирую вопрос, чтобы уточнить.
Брант Бобби

Ответы:


29

Решение с участием Терминала:

  1. Загрузите источники из Gifsicle
  2. Распакуйте исходники и перейдите в распакованный каталог
  3. Делать ./configure --disable-gifview --disable-gifdiff
  4. Делать make
  5. Делать cd src
  6. И, наконец, сделать ./gifsicle -bl /path/to/image.gif

Решения с использованием инструментов с графическим интерфейсом ( я их не тестировал! ):

  1. Вы можете попробовать GifBuilder (для работы с Snow Leopard требуется Rosetta).
  2. Pixen также, кажется, редактор Gif.

1
Gifsicle - определенно инструмент для работы. Я нашел это настолько полезным, что я собрал установочный pkg с двоичными файлами для легкого развертывания, XCode не требуется. dept.psych.columbia.edu/~peter/gifsicle
notpeter

@ Notpeter Как вы используете это, когда вы установили его?
Эшли Уорд

2
Чтобы расширить свой ответ, вот что сработало для меня: сначала установите Homebrew как босс: brew install gifsicleзатем сделайте цикл:gifsicle -l non_looping.gif > looping.gif
Майкл

Спасибо, Майкл, ваше предложение отлично работает (заварите gifsicle, затем сделайте цикл: gifsicle -l non_looping.gif> looping.gif)
Эрвин Куманс

С доморощенным на Mac вы можете просто сделатьbrew install gifsicle
Just Lucky Really

45

Вы можете использовать ImageMagick. Вы просто запускаете:

convert -delay 20 -loop 0 nonloopingImage.gif loopingImage.gif

Возможно, вам придется сначала установить ImageMagick.

Если вы используете brew, вы можете: brew install imagemagickиз терминала, тогда вы можете запустить convertкоманду.


3
Не предустановлен на моем, 2014 MBP под управлением ОС 10.11. Если бы brew install imagemagick.
jasonszhao

imagemagick ftws
Дэн Брэдбери

1
Если вы не хотите, чтобы gif зацикливался, используйте-loop 1
Flimm

Работает как шарм! Стоит отметить, что это -delay <number>может замедлить GIF, добавив задержку между каждым кадром. imagemagick.org/script/command-line-options.php#delay
mLuby

Требуется ли задержка? Если так, то почему? Если нет, то, вероятно, удалите его
anthonygore

9

GIMP может редактировать анимированные GIF-изображения; откройте изображение и сохраните его снова. Вам будет задано несколько вопросов, и один из доступных вариантов - это цикл навсегда.

По-видимому, возможно или даже просто установить GIMP на OS X, но я не могу сказать, что сделал это,


6

Предполагая, что вы уже установили Homebrewи запустите brew install imagemagick.

Просто используйте командную строку, чтобы сделать:

convert -delay 15 -loop 0 input.gif output.gif

И это редактирует существующее изображение без изменения продолжительности:

mogrify -loop 0 Untitled.gif

Sidenote: используйте licecapна macOS, чтобы делать анимированные скриншоты.
Уильям Энтрикен

3

Смотрите руководство по анимированным GIF-файлам Майкла .

Он описывает утилиту GIF Construction Set, которая может отображать внутреннюю структуру анимированного GIF (к сожалению, не для OS X). Особенно интересны:

Элемент управления LOOP указывает, сколько раз серия изображений будет представлена. Хотя многие анимированные GIF находятся в бесконечном цикле, это может отвлекать пользователя. Этот GIF циклов 'noframes' 5 раз.

образ

Труднее найти бесплатные утилиты OS X для редактирования файлов GIF, тем более что я не пользователь Mac. Gifsicle , который , кажется, соответствует всем требованиям , может установить цикл с помощью параметра loopcount.


2

Если вы пришли сюда для внесения этих изменений на ПК, как я, GIMP - отличный вариант. Ответ А.Н. хороший - вот некоторые особенности, которые нужно добавить к их ответу.

  1. Откройте свой анимированный GIF в GIMP
  2. Нажмите Файл> Экспортировать как ... при необходимости измените имя и нажмите «Экспорт»
  3. Выберите «As Animation», затем установите флажок «Loop Forever». Нажмите «Экспорт» еще раз

Хорошая вещь в GIMP по сравнению с другими опциями, указанными выше, заключается в том, что вам не нужно писать какой-либо код или команды - все это встроено и бесплатно. Надеюсь это поможет!

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.