Stretch out
Headline holds, then stretches sideways like elastic while fading away. Rubbery exits to follow a stretch entrance.
Preview unavailable
Apply this to my video: "Stretch out" from the 24fps video editor library.
Preset JSON: https://24fps.dev/video-editor/text/elastic-stretch-out-cc2/preset.json (pass its "preset" to the engine).
Engine (MIT, no dependencies, ES module): https://24fps.dev/editor/engine.js. Download the engine next to your page (curl -O) rather than importing cross-origin, then import { mount } from "./engine.js" in a <script type="module"> served over http.
Wiring: root = a position:relative box at the video's size. media = { main }: main is a wrapper holding my video, filling the root. Then const fx = mount(root, { kind: "text", preset, media }) and call fx.render(seconds) every frame. The preset runs 5s from t = 0; offset t to place it later. It is seek-safe: drive it from the GSAP timeline in HyperFrames or call render(frame / fps) in Remotion. Before capturing frames, await (fx.ready ?? document.fonts.ready). Check it on my footage: if text is hidden behind the subject or doesn't read against my colours, nudge the layer positions or colours.
Replace the demo text with mine: set preset.layers[n].text (use \n for line breaks); if none given, write lines that fit my footage and tell me.
Field reference: https://24fps.dev/video-editor/llms.txt. Keep sizes as fractions of the frame height so it works at any resolution. Credit: 24fps.dev/video-editor- Same idea
- Also called: Elastic Telescopic II
- Technique
- The stretch entrance played backwards: width scales to 2.4 times while the text fades. The spring ring is not reproduced.
- Footage
- Rainy street at night, Pexels