A VMobject that renders text as Bezier outlines. Uses systemfonts for font discovery and textshaping for glyph layout. Each glyph becomes a submobject (VMobject) so individual letters can be animated.
Details
Unlike Python Manim which uses Cairo/Pango, manimR uses R-native systemfonts + textshaping for cross-platform font support. When these packages are unavailable, falls back to a simple bounding-box placeholder.
Super classes
manimR::MObject -> manimR::VMobject -> Text
Public fields
textThe text string
fontFont family name
font_sizeFont size in manimR units (default 48 ~ DEFAULT_FONT_SIZE)
weightFont weight ("normal", "bold")
slantFont slant ("normal", "italic", "oblique")
line_spacingMultiplier for line spacing
alignmentText alignment ("left", "center", "right")
gradientOptional color gradient across glyphs
glyphsList of per-glyph VMobjects (submobjects)
Methods
Inherited methods
manimR::MObject$add_updater()manimR::MObject$align_to()manimR::MObject$clear_updaters()manimR::MObject$copy()manimR::MObject$generate_target()manimR::MObject$get_bottom()manimR::MObject$get_corner()manimR::MObject$get_height()manimR::MObject$get_left()manimR::MObject$get_right()manimR::MObject$get_top()manimR::MObject$get_width()manimR::MObject$match_color()manimR::MObject$next_to()manimR::MObject$set_opacity()manimR::MObject$to_corner()manimR::MObject$to_edge()manimR::VMobject$add()manimR::VMobject$add_cubic_bezier()manimR::VMobject$add_line()manimR::VMobject$add_submobject()manimR::VMobject$append_points()manimR::VMobject$clear_points()manimR::VMobject$get_all_points()manimR::VMobject$get_arc_length()manimR::VMobject$get_bounding_box()manimR::VMobject$get_center()manimR::VMobject$get_draw_points()manimR::VMobject$get_end()manimR::VMobject$get_num_curves()manimR::VMobject$get_points()manimR::VMobject$get_start()manimR::VMobject$get_submobject()manimR::VMobject$has_points()manimR::VMobject$move_to()manimR::VMobject$point_from_proportion()manimR::VMobject$print()manimR::VMobject$remove()manimR::VMobject$rotate()manimR::VMobject$scale()manimR::VMobject$set_color()manimR::VMobject$set_fill()manimR::VMobject$set_points()manimR::VMobject$set_stroke()manimR::VMobject$set_style()manimR::VMobject$shift()
Method new()
Create a new Text object
Usage
Text$new(
text,
font = "sans",
font_size = DEFAULT_FONT_SIZE,
color = WHITE,
weight = "normal",
slant = "normal",
line_spacing = 1.2,
alignment = "center",
gradient = NULL,
position = ORIGIN,
...
)Arguments
textThe text string to render
fontFont family (default "sans")
font_sizeSize in manimR units (default DEFAULT_FONT_SIZE)
colorText color
weightFont weight
slantFont slant
line_spacingLine spacing multiplier
alignmentText alignment
gradientOptional color gradient (vector of colors)
positionPosition in scene
...Additional args passed to VMobject
Method slice()
Slice a range of glyphs (returns a VGroup)
Method set_color_by_gradient()
Apply a color gradient across all glyphs