Skip to content

A tiny, unambitious rich text helper for bevy_ui.

License

Notifications You must be signed in to change notification settings

rparrett/bevy_simple_rich_text

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bevy_simple_rich_text

crates.io docs Following released Bevy versions

A tiny, unambitious rich text helper for bevy_ui with a simple bbcode-inspired syntax.

Usage

// Register style tags by spawning `StyleTag` with `TextFont`, `TextColor`,
// and any other arbitrary Component.
commands.spawn((
    StyleTag::new("lg"),
    TextFont {
        font_size: 40.,
        ..default()
    },
));
commands.spawn((
    StyleTag::new("fancy"),
    TextColor(Color::hsl(0., 0.9, 0.7)),
    FancyText,
));

// And use them
commands.spawn(RichText::new("[lg]Hello [lg,fancy]World"));

See also examples/advanced.rs.

Performance

Modifying a RichText completely rebuilds the TextSpans, so it's probably pretty slow.

But you can attach arbitrary marker components to styles to achieve fast animations.

Compatibility

bevy_simple_rich_text bevy
0.2 0.15
0.1 0.14

Contributing

Please feel free to open a PR. The goal of this project isn't to support every feature or use-case, but to be good enough for simple projects while remaining very maintainable.

Please keep PRs small and scoped to a single feature or fix.

About

A tiny, unambitious rich text helper for bevy_ui.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages