Как я могу разделить анимированный файл .gif на его компоненты?

Если вы хотите, чтобы общая команда переименовала несколько файлов и / или каталогов с одним или несколькими двоеточиями, вы можете использовать rename,

rename 's/://g' *

. После этого вы можете cd в любой из каталоги (которые вы изменили), как обычно (без кавычек).

Альтернативная командная строка в соответствии с советами в комментариях @DavidFoerster и @dessert,

[ f2] Если вы хотите ограничить действия переименования каталогами, вы должны добавить косую черту после звезды дикой карты. Вы также можете поместить двоеточие в выражении wild-card, чтобы ограничить выбор файлов теми, которые содержат двоеточие в имени файла, что может ускорить действие, если нужно искать огромное количество каталогов,

Редактировать:

@ EliahKagan предлагает начать с «сухого хода» с опцией -n,

rename -n 's/://g' *
, которая просто печатает, какие операции переименования будут выполнено. Затем его можно запустить снова с удаленной опцией -n, чтобы фактически переименовать файлы. Это помогает избежать ошибок, таких как случайное переименование нескольких файлов, которые действительно хотели оставить в покое.
1
задан 4 February 2014 в 06:19

2 ответа

Если различные кадры имеют прозрачные области и накладываются друг на друга, вы можете использовать команду convert с параметром «-coalesce» для создания набора файлов target-0.png, target-1.png и т. д. , каждый из которых объединяет последовательность предыдущих изображений:

convert -coalesce animation.gif target.png
29
ответ дан 25 May 2018 в 14:34
  • 1
    Действительно полезный комментарий, спасибо – Selivanov Pavel 20 December 2013 в 00:07
  • 2
    Отличный комментарий, но нуждается в объяснении. В основном это решает проблему @cirosantilli, когда ImageMagick возвращает то, что понравилось обновлениям для определенных областей экрана. -coalesce объединяет эти обновления, чтобы дать вам готовый рендеринг. – AnthonyVO 1 July 2014 в 17:18
  • 3
    Следует отметить, что (по сравнению с ImageMagick версии 6.7.7), по-видимому, существует некоторая утечка памяти: не пытайтесь -coalesce с длинными .gif screencasts , он, вероятно, будет потреблять всю доступную память и возможно повесить всю вашу систему. – leftaroundabout 30 August 2015 в 01:55
  • 4
    вы можете указать имена выходных файлов через что-то вроде: convert -coalesce animation.gif target.%04d.png – Trevor Boyd Smith 29 May 2016 в 18:35

для меня, с ImageMagick (информация о версии: 6.8.9-9 Q16 x86_64 2017-07-31)

convert gif.gif gif.pdf

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

1
ответ дан 25 May 2018 в 14:34
  • 1
    Это кажется слишком сложным и в отличие от того, что хочет OP. – David Foerster 17 November 2017 в 01:57

Другие вопросы по тегам:

Похожие вопросы: