Как обрезать Lottie‑анимацию так, чтобы она начиналась с указанного кадра?

Мне нужно обрезать анимацию, начиная с 108-го кадра — как это сделать и можно ли выполнить это в lottiefiles com? <br/>
  • 23 июля 2026 г. 2:00
Ответы на вопрос 2
Коротко — да, можно. Варианты зависят от того, нужно ли вам лишь начать воспроизведение с кадра 108 (в рантайме), или получить новый JSON, в котором кадр 108 стал первым кадром (постоянно обрезать файл).

1) Быстро — только при воспроизведении (lottie-web)
- Если достаточно, чтобы при проигрывании анимация начиналась с 108-го кадра, используйте API lottie-web:
  - animation.goToAndPlay(108, true) — перейти и начать с кадра 108 (второй аргумент true — значит значение в кадрах).
  - или animation.playSegments([108, animation.getDuration(true)], true) — проиграть сегмент от 108 до конца.
Пример:
  const animation = lottie.loadAnimation({ container, renderer: 'svg', loop: false, autoplay: false, path: 'anim.json' });
  // старт с кадра 108
  animation.goToAndPlay(108, true);
  // или проиграть от 108 до конца
  animation.playSegments([108, animation.getDuration(true)], true);

2) Обрезать файл навсегда (получить новый JSON)
- LottieFiles.com: у них есть онлайн‑редактор (Lottie Editor) с возможностью обрезки/trim. Общие шаги:
  1. Загрузите (или откройте) ваш JSON на lottiefiles.com.
  2. Нажмите Edit (Редактировать) → откройте инструмент Timeline/Trim.
  3. Установите начальную позицию (Start) на 108‑й кадр и при необходимости конечную.
  4. Примените изменения и экспортируйте/скачайте новый JSON.
Учтите, что интерфейс сайта может меняться, но функционал «Trim»/«Crop/Editor» в LottieFiles обычно есть.

3) В After Effects + Bodymovin (если есть исходник .aep)
- Откройте композицию в AE, переместите текущую позицию на кадр 108, нажмите B (установить начало рабочей области) или вручную задайте In point, затем экспортируйте через плагин Bodymovin — результат будет экспортирован начиная с этого кадра.

4) Ручное редактирование JSON (только если уверены)
- Можно править JSON: уменьшить top-level "ip" и "op", сдвинуть у каждого слоя "ip"/"op" и у ключевых кадров ("t" в keyframes) на 108 фреймов. Это рискованно и требует аккуратности — всегда делайте бэкап. Формула: новое значение_frame = старое_value - 108 (и отбрасывать отрицательные/лишние ключи). Учтите fps: кадры в JSON — в единицах кадров (top-level "fr" задаёт fps, если нужны секунды).

Рекомендация
- Если нужно просто стартовать с кадра 108 в приложении — используйте lottie-web (goToAndPlay / playSegments).
- Если нужен новый файл, проще всего воспользоваться LottieFiles Editor или экспортировать через After Effects.

Если хотите — скажите, в каком варианте вы работаете (веб/After Effects/нужен новый JSON), и я дам точные пошаговые инструкции или проверю, как именно сделать Trim в текущем интерфейсе LottieFiles.
В JSON анимации есть ip и op — начальный и конечный кадр показа. Поставь в корне файла <code>"ip": 108</code> , и воспроизведение начнётся с этого кадра — сами кадры до 108 из JSON никуда не денутся, просто не будут рендериться. Без правки файла тоже можно, через код: <pre><code>animation.playSegments([108, animation.animationData.op], true)</code></pre> .
Похожие вопросы