Class: Paragraph
Defined in: mobjects/text/Paragraph.ts:38
Paragraph - A text mobject with automatic word wrapping
Extends Text to add word wrapping functionality. Text is wrapped to fit within a specified width, with configurable alignment.
Example
// Create a paragraph with max width
const para = new Paragraph({
text: 'This is a long paragraph that will automatically wrap to fit within the specified width.',
width: 4, // 4 world units
alignment: 'justify'
});
// Update width to trigger re-wrap
para.setWidth(3);
Extends
Constructors
Constructor
new Paragraph(
options):Paragraph
Defined in: mobjects/text/Paragraph.ts:43
Parameters
options
Returns
Paragraph
Overrides
Properties
__savedMobjectState
__savedMobjectState:
unknown=null
Defined in: core/Mobject.ts:95
JSON-serializable saved state (used by restoreState()).
Inherited from
_alignment
protected_alignment:"center"|"left"|"right"|"justify"
Defined in: mobjects/text/Paragraph.ts:40
_canvas
protected_canvas:HTMLCanvasElement=null
Defined in: mobjects/text/Text.ts:132
Off-screen canvas for text rendering
Inherited from
_canvasDirty
protected_canvasDirty:boolean=true
Defined in: mobjects/text/Text.ts:121
Flag to track when canvas content needs re-rendering (text/color/font changes)
Inherited from
_color
protected_color:string='#ffffff'
Defined in: core/Mobject.ts:70
Inherited from
_ctx
protected_ctx:CanvasRenderingContext2D=null
Defined in: mobjects/text/Text.ts:133
Inherited from
_dirty
_dirty:
boolean=true
Defined in: core/Mobject.ts:88
Inherited from
_disableChildZLayering
protected_disableChildZLayering:boolean=false
Defined in: core/Mobject.ts:85
When true, children skip the 2D z-layering offset in _syncToThree.
Inherited from
_fontFamily
protected_fontFamily:string
Defined in: mobjects/text/Text.ts:117
Inherited from
_fontSize
protected_fontSize:number
Defined in: mobjects/text/Text.ts:116
Inherited from
_fontStyle
protected_fontStyle:string
Defined in: mobjects/text/Text.ts:119
Inherited from
_fontUrl?
protectedoptional_fontUrl:string
Defined in: mobjects/text/Text.ts:127
Optional font URL for glyph vector extraction
Inherited from
_fontWeight
protected_fontWeight:string|number
Defined in: mobjects/text/Text.ts:118
Inherited from
_glyphGroup
protected_glyphGroup:TextGlyphGroup=null
Defined in: mobjects/text/Text.ts:129
Cached glyph group (created lazily by loadGlyphs)
Inherited from
_letterSpacing
protected_letterSpacing:number
Defined in: mobjects/text/Text.ts:123
Inherited from
_lineHeight
protected_lineHeight:number
Defined in: mobjects/text/Text.ts:122
Inherited from
_maxWidth
protected_maxWidth:number
Defined in: mobjects/text/Paragraph.ts:39
_mesh
protected_mesh:Mesh<BufferGeometry<NormalBufferAttributes,BufferGeometryEventMap>,Material<MaterialEventMap> |Material<MaterialEventMap>[],Object3DEventMap> =null
Defined in: mobjects/text/Text.ts:139
Plane mesh for displaying the texture
Inherited from
_opacity
protected_opacity:number=1
Defined in: core/Mobject.ts:81
Inherited from
_style
protected_style:MobjectStyle
Defined in: core/Mobject.ts:86
Inherited from
_text
protected_text:string
Defined in: mobjects/text/Text.ts:115
Inherited from
_textAlign
protected_textAlign:"center"|"left"|"right"
Defined in: mobjects/text/Text.ts:124
Inherited from
_texture
protected_texture:Texture<unknown,TextureEventMap> =null
Defined in: mobjects/text/Text.ts:136
Three.js texture from canvas
Inherited from
_threeObject
_threeObject:
Object3D<Object3DEventMap> =null
Defined in: core/Mobject.ts:87
Inherited from
_worldHeight
protected_worldHeight:number=0
Defined in: mobjects/text/Text.ts:143
Inherited from
_worldWidth
protected_worldWidth:number=0
Defined in: mobjects/text/Text.ts:142
Cached dimensions in world units
Inherited from
_wrappedLines
protected_wrappedLines:string[] =[]
Defined in: mobjects/text/Paragraph.ts:41
children
children:
Mobject[] =[]
Defined in: core/Mobject.ts:65
Inherited from
createdAtBeginning
createdAtBeginning:
boolean=false
Defined in: core/Mobject.ts:69
Inherited from
fillOpacity
fillOpacity:
number=0
Defined in: core/Mobject.ts:83
Inherited from
id
readonlyid:string
Defined in: core/Mobject.ts:63
Inherited from
parent
parent:
Mobject=null
Defined in: core/Mobject.ts:64
Inherited from
position
position:
Vector3
Defined in: core/Mobject.ts:66
Inherited from
rotation
rotation:
Euler
Defined in: core/Mobject.ts:67
Inherited from
savedState
savedState:
Mobject=null
Defined in: core/Mobject.ts:91
Saved mobject copy (used by Restore animation). Set by saveState().
Inherited from
scaleVector
scaleVector:
Vector3
Defined in: core/Mobject.ts:68
Inherited from
strokeWidth
strokeWidth:
number=4
Defined in: core/Mobject.ts:82
Inherited from
targetCopy
targetCopy:
Mobject=null
Defined in: core/Mobject.ts:93
Target copy used by generateTarget() / MoveToTarget animation.
Inherited from
Accessors
animate
Get Signature
get animate():
any
Defined in: core/Mobject.ts:497
Returns an AnimateProxy that records method calls.
Pass the proxy to scene.play() to animate from the current state
to the state after all recorded calls are applied.
Example
scene.play(circle.animate.shift([2, 0, 0]));
scene.play(circle.animate.setColor('#ff0000').scale(2));
Returns
any
Inherited from
color
Get Signature
get color():
string
Defined in: core/Mobject.ts:71
Returns
string
Set Signature
set color(
value):void
Defined in: core/Mobject.ts:74
Parameters
value
string
Returns
void
Inherited from
fillColor
Get Signature
get fillColor():
string
Defined in: core/Mobject.ts:184
Returns
string
Set Signature
set fillColor(
color):void
Defined in: core/Mobject.ts:188
Parameters
color
string
Returns
void
Inherited from
isDirty
Get Signature
get isDirty():
boolean
Defined in: core/Mobject.ts:551
Returns
boolean
Inherited from
opacity
Get Signature
get opacity():
number
Defined in: core/Mobject.ts:114
Returns
number
Set Signature
set opacity(
value):void
Defined in: core/Mobject.ts:118
Parameters
value
number
Returns
void
Inherited from
strokeColor
Get Signature
get strokeColor():
string
Defined in: core/Mobject.ts:195
Returns
string
Set Signature
set strokeColor(
color):void
Defined in: core/Mobject.ts:199
Parameters
color
string
Returns
void
Inherited from
style
Get Signature
get style():
MobjectStyle
Defined in: core/Mobject.ts:122
Returns
Inherited from
submobjects
Get Signature
get submobjects():
Mobject[]
Defined in: core/Mobject.ts:136
Returns
Mobject[]
Inherited from
Methods
_buildFontString()
protected_buildFontString():string
Defined in: mobjects/text/Text.ts:277
Build the CSS font string
Returns
string
Inherited from
_createCopy()
protected_createCopy():Paragraph
Defined in: mobjects/text/Paragraph.ts:333
Create a copy of this Paragraph mobject
Returns
Paragraph
Overrides
_createThreeObject()
protected_createThreeObject():Object3D
Defined in: mobjects/text/Text.ts:467
Create the Three.js backing object
Returns
Object3D
Inherited from
_drawJustifiedLine()
protected_drawJustifiedLine(line,startX,endX,y):void
Defined in: mobjects/text/Paragraph.ts:280
Draw a line with justified spacing
Parameters
line
string
startX
number
endX
number
y
number
Returns
void
_drawTextWithLetterSpacing()
protected_drawTextWithLetterSpacing(text,startX,y,_fontSize):void
Defined in: mobjects/text/Text.ts:406
Draw text with custom letter spacing
Parameters
text
string
startX
number
y
number
_fontSize
number
Returns
void
Inherited from
Text._drawTextWithLetterSpacing
_getBoundingBox()
_getBoundingBox():
object
Defined in: core/Mobject.ts:449
Returns
object
depth
depth:
number
height
height:
number
width
width:
number
Deprecated
Use getBoundingBox() instead.
Inherited from
_getEdgeInDirection()
_getEdgeInDirection(
direction):Vector3Tuple
Defined in: core/Mobject.ts:442
Parameters
direction
Returns
Inherited from
_handoffTextureMap()
protected_handoffTextureMap(material,nextTexture,previousTexture):void
Defined in: core/TexturedMobject.ts:42
Sets material.map, marks material dirty, and disposes previous texture when replaced.
Parameters
material
MeshBasicMaterial
nextTexture
Texture<unknown, TextureEventMap>
previousTexture
Texture<unknown, TextureEventMap>
Returns
void
Inherited from
_initCanvas()
protected_initCanvas():void
Defined in: mobjects/text/Text.ts:185
Initialize the off-screen canvas
Returns
void
Inherited from
_isNewParagraph()
protected_isNewParagraph(lines,currentIndex):boolean
Defined in: mobjects/text/Paragraph.ts:272
Check if the next line starts a new paragraph (empty line or explicit break)
Parameters
lines
string[]
currentIndex
number
Returns
boolean
_markDirty()
_markDirty():
void
Defined in: core/Mobject.ts:541
Returns
void
Inherited from
_markDirtyUpward()
_markDirtyUpward():
void
Defined in: core/Mobject.ts:545
Returns
void
Inherited from
_measureText()
protected_measureText():object
Defined in: mobjects/text/Paragraph.ts:153
Override measure text to use wrapped lines
Returns
object
height
height:
number
lines
lines:
string[]
width
width:
number
Overrides
_renderToCanvas()
protected_renderToCanvas():void
Defined in: mobjects/text/Paragraph.ts:194
Render text to canvas with justification support
Returns
void
Overrides
_syncMaterialToThree()
protected_syncMaterialToThree():void
Defined in: mobjects/text/Text.ts:564
Sync material properties to Three.js
Returns
void
Inherited from
_syncToThree()
_syncToThree():
void
Defined in: core/Mobject.ts:519
Returns
void
Inherited from
_updateMesh()
protected_updateMesh():void
Defined in: mobjects/text/Text.ts:453
Update the mesh geometry to match new dimensions
Returns
void
Inherited from
_wrapText()
protected_wrapText():string[]
Defined in: mobjects/text/Paragraph.ts:105
Wrap text to fit within max width
Returns
string[]
Array of wrapped lines
add()
add(...
mobjects):this
Defined in: core/Mobject.ts:329
Parameters
mobjects
...Mobject[]
Returns
this
Inherited from
addUpdater()
addUpdater(
updater,callOnAdd):this
Defined in: core/Mobject.ts:589
Parameters
updater
callOnAdd
boolean = false
Returns
this
Inherited from
alignTo()
alignTo(
target,direction):this
Defined in: core/Mobject.ts:427
Parameters
target
direction
Returns
this
Inherited from
applyContentFrom()
applyContentFrom(
other):void
Defined in: mobjects/text/Text.ts:544
Copy class-authoritative content metadata from another textured mobject so that future sync cycles and API reads (e.g. getText()) reflect the target's content.
Parameters
other
TexturedMobject
Returns
void
Inherited from
applyFunction()
applyFunction(
fn,options?):this
Defined in: core/Mobject.ts:619
Parameters
fn
(point) => number[]
options?
aboutEdge?
aboutPoint?
Returns
this
Inherited from
applyMatrix()
applyMatrix(
matrix,options?):this
Defined in: core/Mobject.ts:627
Parameters
matrix
number[][]
options?
aboutEdge?
aboutPoint?
Returns
this
Inherited from
applyTextureFrom()
applyTextureFrom(
other):void
Defined in: mobjects/text/Text.ts:518
Copy texture/material-relevant state from another textured mobject.
Parameters
other
TexturedMobject
Returns
void
Inherited from
applyToFamily()
applyToFamily(
func):this
Defined in: core/Mobject.ts:577
Parameters
func
(mobject) => void
Returns
this
Inherited from
applyVisualSize()
applyVisualSize(
width,height):void
Defined in: mobjects/text/Text.ts:552
Update class-authoritative visual size state so later sync cycles do not revert display dimensions set during transform finish.
Parameters
width
number
height
number
Returns
void
Inherited from
become()
become(
other):this
Defined in: core/Mobject.ts:376
Parameters
other
Returns
this
Inherited from
center()
center():
this
Defined in: core/Mobject.ts:479
Returns
this
Inherited from
clearUpdaters()
clearUpdaters():
this
Defined in: core/Mobject.ts:601
Returns
this
Inherited from
copy()
copy():
Mobject
Defined in: core/Mobject.ts:358
Returns
Inherited from
dispose()
dispose():
void
Defined in: mobjects/text/Text.ts:659
Clean up Three.js and canvas resources
Returns
void
Inherited from
flip()
flip(
axis,options?):this
Defined in: core/Mobject.ts:257
Parameters
axis
Vector3Tuple = ...
options?
aboutEdge?
aboutPoint?
Returns
this
Inherited from
generateTarget()
generateTarget():
Mobject
Defined in: core/Mobject.ts:642
Returns
Inherited from
getAlignment()
getAlignment():
"center"|"left"|"right"|"justify"
Defined in: mobjects/text/Paragraph.ts:83
Get the paragraph alignment
Returns
"center" | "left" | "right" | "justify"
getBottom()
getBottom():
Vector3Tuple
Defined in: core/Mobject.ts:458
Returns
Inherited from
getBoundingBox()
getBoundingBox():
object
Defined in: core/Mobject.ts:445
Returns
object
depth
depth:
number
height
height:
number
width
width:
number
Inherited from
getBounds()
getBounds():
object
Defined in: core/Mobject.ts:392
Returns
object
max
max:
object
max.x
x:
number
max.y
y:
number
max.z
z:
number
min
min:
object
min.x
x:
number
min.y
y:
number
min.z
z:
number
Inherited from
getCenter()
getCenter():
Vector3Tuple
Defined in: mobjects/text/Text.ts:632
Get the center of this text mobject
Returns
Inherited from
getDisplayMeshes()
getDisplayMeshes():
Mesh<BufferGeometry<NormalBufferAttributes,BufferGeometryEventMap>,Material<MaterialEventMap> |Material<MaterialEventMap>[],Object3DEventMap>[]
Defined in: mobjects/text/Text.ts:506
Return the meshes that visually represent this mobject. Textured morph code can use this for strict single-mesh validation.
Returns
Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>[]
Inherited from
getDisplayMeshLength()
getDisplayMeshLength():
number
Defined in: mobjects/text/Text.ts:502
Return how many display meshes this textured mobject contributes.
Returns
number
Inherited from
getEdge()
getEdge(
direction):Vector3Tuple
Defined in: core/Mobject.ts:452
Parameters
direction
Returns
Inherited from
getFamily()
getFamily():
Mobject[]
Defined in: core/Mobject.ts:583
Returns
Mobject[]
Inherited from
getFontFamily()
getFontFamily():
string
Defined in: mobjects/text/Text.ts:242
Get the current font family
Returns
string
Inherited from
getFontSize()
getFontSize():
number
Defined in: mobjects/text/Text.ts:221
Get the current font size
Returns
number
Inherited from
getGlyphGroup()
getGlyphGroup():
TextGlyphGroup
Defined in: mobjects/text/Text.ts:581
Get the cached TextGlyphGroup (null until loadGlyphs() resolves).
Returns
Inherited from
getHeight()
getHeight():
number
Defined in: mobjects/text/Text.ts:270
Get text height in world units
Returns
number
Inherited from
getLeft()
getLeft():
Vector3Tuple
Defined in: core/Mobject.ts:461
Returns
Inherited from
getMaxWidth()
getMaxWidth():
number
Defined in: mobjects/text/Paragraph.ts:63
Get the maximum width for text wrapping
Returns
number
getRight()
getRight():
Vector3Tuple
Defined in: core/Mobject.ts:464
Returns
Inherited from
getText()
getText():
string
Defined in: mobjects/text/Text.ts:200
Get the current text content
Returns
string
Inherited from
getTextureMesh()
getTextureMesh():
Mesh<BufferGeometry<NormalBufferAttributes,BufferGeometryEventMap>,Material<MaterialEventMap> |Material<MaterialEventMap>[],Object3DEventMap>
Defined in: mobjects/text/Text.ts:625
Get the texture mesh (for animation cross-fade access).
Returns
Mesh<BufferGeometry<NormalBufferAttributes, BufferGeometryEventMap>, Material<MaterialEventMap> | Material<MaterialEventMap>[], Object3DEventMap>
Inherited from
getThreeObject()
getThreeObject():
Object3D
Defined in: core/Mobject.ts:555
Returns
Object3D
Inherited from
getTop()
getTop():
Vector3Tuple
Defined in: core/Mobject.ts:455
Returns
Inherited from
getUpdaters()
getUpdaters():
UpdaterFunction[]
Defined in: core/Mobject.ts:608
Returns
Inherited from
getWidth()
getWidth():
number
Defined in: mobjects/text/Text.ts:263
Get text width in world units
Returns
number
Inherited from
hasUpdaters()
hasUpdaters():
boolean
Defined in: core/Mobject.ts:605
Returns
boolean
Inherited from
loadGlyphs()
loadGlyphs(
options?):Promise<TextGlyphGroup>
Defined in: mobjects/text/Text.ts:594
Lazily create a TextGlyphGroup from the font file at _fontUrl. Returns null if no fontUrl was provided.
Parameters
options?
skeletonOptions?
SkeletonizeOptions
Fine-tuning options for the skeletonization algorithm (grid resolution, smoothing, etc.).
useSkeletonStroke?
boolean
When true, each glyph computes its skeleton (medial axis) for center-line stroke animation. Default: false.
Returns
Promise<TextGlyphGroup>
Inherited from
moveTo()
moveTo(
target,alignedEdge?):this
Defined in: core/Mobject.ts:216
Parameters
target
alignedEdge?
Returns
this
Inherited from
moveToAligned()
moveToAligned(
target,alignedEdge?):this
Defined in: core/Mobject.ts:437
Parameters
target
alignedEdge?
Returns
this
Inherited from
nextTo()
nextTo(
target,direction,buff):this
Defined in: core/Mobject.ts:410
Parameters
target
direction
Vector3Tuple = RIGHT
buff
number = 0.25
Returns
this
Inherited from
prepareForNonlinearTransform()
prepareForNonlinearTransform(
numPieces):this
Defined in: core/Mobject.ts:635
Parameters
numPieces
number = 50
Returns
this
Inherited from
Text.prepareForNonlinearTransform
remove()
remove(...
mobjects):this
Defined in: core/Mobject.ts:342
Parameters
mobjects
...Mobject[]
Returns
this
Inherited from
removeUpdater()
removeUpdater(
updater):this
Defined in: core/Mobject.ts:595
Parameters
updater
Returns
this
Inherited from
replace()
replace(
target,stretch):this
Defined in: core/Mobject.ts:381
Parameters
target
stretch
boolean = false
Returns
this
Inherited from
restoreState()
restoreState():
boolean
Defined in: core/Mobject.ts:652
Returns
boolean
Inherited from
rotate()
rotate(
angle,axisOrOptions?):this
Defined in: core/Mobject.ts:237
Rotate the mobject by angle around an axis. Accepts aboutPoint or aboutEdge to specify the rotation center.
Parameters
angle
number
axisOrOptions?
Vector3Tuple | { aboutEdge?: Vector3Tuple; aboutPoint?: Vector3Tuple; axis?: Vector3Tuple; }
Returns
this
Inherited from
rotateAboutOrigin()
rotateAboutOrigin(
angle,axis):this
Defined in: core/Mobject.ts:253
Parameters
angle
number
axis
Vector3Tuple = ...
Returns
this
Inherited from
saveState()
saveState():
this
Defined in: core/Mobject.ts:647
Returns
this
Inherited from
scale()
scale(
factor,options?):this
Defined in: core/Mobject.ts:283
Parameters
factor
number | Vector3Tuple
options?
aboutEdge?
aboutPoint?
Returns
this
Inherited from
setAlignment()
setAlignment(
alignment):this
Defined in: mobjects/text/Paragraph.ts:92
Set paragraph alignment
Parameters
alignment
Text alignment
"center" | "left" | "right" | "justify"
Returns
this
this for chaining
setColor()
setColor(
color):this
Defined in: core/Mobject.ts:140
Parameters
color
string
Returns
this
Inherited from
setFill()
setFill(
color?,opacity?):this
Defined in: core/Mobject.ts:178
Parameters
color?
string
opacity?
number
Returns
this
Inherited from
setFillOpacity()
setFillOpacity(
opacity):this
Defined in: core/Mobject.ts:168
Parameters
opacity
number
Returns
this
Inherited from
setFontFamily()
setFontFamily(
family):this
Defined in: mobjects/text/Text.ts:251
Set font family and re-render
Parameters
family
string
CSS font family string
Returns
this
this for chaining
Inherited from
setFontSize()
setFontSize(
size):this
Defined in: mobjects/text/Text.ts:230
Set font size and re-render
Parameters
size
number
Font size in points
Returns
this
this for chaining
Inherited from
setStrokeOpacity()
setStrokeOpacity(
opacity):this
Defined in: core/Mobject.ts:148
Parameters
opacity
number
Returns
this
Inherited from
setStrokeWidth()
setStrokeWidth(
width):this
Defined in: core/Mobject.ts:158
Parameters
width
number
Returns
this
Inherited from
setStyle()
setStyle(
style):this
Defined in: core/Mobject.ts:126
Parameters
style
Partial<MobjectStyle>
Returns
this
Inherited from
setText()
setText(
text):this
Defined in: mobjects/text/Text.ts:209
Set new text content and re-render
Parameters
text
string
New text to display
Returns
this
this for chaining
Inherited from
setWidth()
setWidth(
width):this
Defined in: mobjects/text/Paragraph.ts:72
Set maximum width and trigger re-wrap
Parameters
width
number
Maximum width in world units
Returns
this
this for chaining
setX()
setX(
x):this
Defined in: core/Mobject.ts:467
Parameters
x
number
Returns
this
Inherited from
setY()
setY(
y):this
Defined in: core/Mobject.ts:471
Parameters
y
number
Returns
this
Inherited from
setZ()
setZ(
z):this
Defined in: core/Mobject.ts:475
Parameters
z
number
Returns
this
Inherited from
shift()
shift(
delta):this
Defined in: core/Mobject.ts:208
Parameters
delta
Returns
this
Inherited from
stretch()
stretch(
factor,dim,options?):this
Defined in: core/Mobject.ts:310
Parameters
factor
number
dim
number
options?
aboutEdge?
aboutPoint?
Returns
this
Inherited from
toCorner()
toCorner(
direction,buff,frameDimensions?):this
Defined in: core/Mobject.ts:509
Parameters
direction
Vector3Tuple = ...
buff
number = 0.5
frameDimensions?
[number, number]
Returns
this
Inherited from
toEdge()
toEdge(
direction,buff,frameDimensions?):this
Defined in: core/Mobject.ts:504
Parameters
direction
buff
number = 0.5
frameDimensions?
[number, number]
Returns
this
Inherited from
update()
update(
dt):void
Defined in: core/Mobject.ts:612
Parameters
dt
number
Returns
void