Skip to main content

Class: TypeWithCursor

Defined in: animation/creation/TypeWithCursor.ts:95

TypeWithCursor - Types text character by character with a blinking cursor

Works with Text mobjects that support getText/setText methods. Displays a blinking cursor at the end of the typed text.

Example

const text = new Text({ text: 'Hello World' });
scene.play(typeWithCursor(text, { typingSpeed: 15 }));

Extends

Constructors

Constructor

new TypeWithCursor(mobject, options): TypeWithCursor

Defined in: animation/creation/TypeWithCursor.ts:120

Parameters

mobject

Mobject

options

TypeWithCursorOptions = {}

Returns

TypeWithCursor

Overrides

Animation.constructor

Properties

_currentCharCount

protected _currentCharCount: number = 0

Defined in: animation/creation/TypeWithCursor.ts:112

Currently displayed character count (excluding cursor)


_cursorVisible

protected _cursorVisible: boolean = true

Defined in: animation/creation/TypeWithCursor.ts:114

Track cursor visibility for blinking


_fullText

protected _fullText: string = ''

Defined in: animation/creation/TypeWithCursor.ts:110

Full text to type


_hasBegun

protected _hasBegun: boolean = false

Defined in: animation/Animation.ts:38

Track if begin() has been called

Inherited from

Animation._hasBegun


_isFinished

protected _isFinished: boolean = false

Defined in: animation/Animation.ts:35

Whether the animation has finished

Inherited from

Animation._isFinished


_lastCursorToggleTime

protected _lastCursorToggleTime: number = 0

Defined in: animation/creation/TypeWithCursor.ts:116

Last cursor toggle time


_originalColor

protected _originalColor: string = ''

Defined in: animation/creation/TypeWithCursor.ts:118

Original text color for highlighting


_startTime

protected _startTime: number = null

Defined in: animation/Animation.ts:32

Time when the animation started (set by Timeline)

Inherited from

Animation._startTime


cursorBlinkRate

protected readonly cursorBlinkRate: number

Defined in: animation/creation/TypeWithCursor.ts:99

Cursor blink rate in blinks per second


protected readonly cursorBlinks: boolean

Defined in: animation/creation/TypeWithCursor.ts:103

Whether cursor blinks during typing


cursorChar

protected readonly cursorChar: string

Defined in: animation/creation/TypeWithCursor.ts:97

Cursor character


duration

readonly duration: number

Defined in: animation/Animation.ts:26

Duration of the animation in seconds

Inherited from

Animation.duration


hideCursorOnComplete

protected readonly hideCursorOnComplete: boolean

Defined in: animation/creation/TypeWithCursor.ts:105

Whether to hide cursor on complete


highlightColor?

protected readonly optional highlightColor: string

Defined in: animation/creation/TypeWithCursor.ts:107

Highlight color for typed text


mobject

readonly mobject: Mobject

Defined in: animation/Animation.ts:23

The mobject being animated

Inherited from

Animation.mobject


rateFunc

readonly rateFunc: RateFunction

Defined in: animation/Animation.ts:29

Rate function controlling the animation's pacing

Inherited from

Animation.rateFunc


remover

remover: boolean = false

Defined in: animation/Animation.ts:44

If true, the scene will remove this mobject after the animation finishes. Used by FadeOut (like Python manim's remover=True).

Inherited from

Animation.remover


typingSpeed

protected readonly typingSpeed: number

Defined in: animation/creation/TypeWithCursor.ts:101

Characters per second

Accessors

startTime

Get Signature

get startTime(): number

Defined in: animation/Animation.ts:184

Get the start time of this animation (set by Timeline)

Returns

number

Set Signature

set startTime(time): void

Defined in: animation/Animation.ts:191

Set the start time of this animation (used by Timeline)

Parameters
time

number

Returns

void

Inherited from

Animation.startTime

Methods

_calculateDuration()

protected _calculateDuration(): number

Defined in: animation/creation/TypeWithCursor.ts:138

Get the calculated duration based on text length

Returns

number


begin()

begin(): void

Defined in: animation/creation/TypeWithCursor.ts:142

Called when the animation starts. Subclasses can override to set up initial state. On the very first call, captures a snapshot of the mobject so that reset() can restore it for clean backward seeking.

Returns

void

Overrides

Animation.begin


finish()

finish(): void

Defined in: animation/creation/TypeWithCursor.ts:205

Called when the animation ends. Subclasses can override to clean up or finalize state.

Returns

void

Overrides

Animation.finish


interpolate()

interpolate(alpha): void

Defined in: animation/creation/TypeWithCursor.ts:165

Apply the animation at a given progress value.

Parameters

alpha

number

Progress from 0 (start) to 1 (end)

Returns

void

Overrides

Animation.interpolate


isFinished()

isFinished(): boolean

Defined in: animation/Animation.ts:145

Check if the animation has finished

Returns

boolean

Inherited from

Animation.isFinished


reset()

reset(): void

Defined in: animation/Animation.ts:154

Reset the animation to its initial state. Restores the mobject to its pre-animation visual state so that re-seeking (especially backward) produces correct results.

Returns

void

Inherited from

Animation.reset


update()

update(_dt, currentTime): void

Defined in: animation/Animation.ts:122

Update the animation for the current frame.

Parameters

_dt

number

Time delta since last frame (unused, but available for subclasses)

currentTime

number

Current time in the timeline

Returns

void

Inherited from

Animation.update