TextBuilder

Struct TextBuilder 

Source
pub struct TextBuilder { /* private fields */ }
Expand description

Builder for Text values.

Implementations§

Source§

impl TextBuilder

Source

pub fn build(self) -> Text

Converts this builder into a Text value.

Source

pub fn string(self, string: ArcStr) -> Self

Sets the string to be displayed.

The string may contain newlines, but is not automatically wrapped beyond that.

The default is the empty string.

Source

pub fn font(self, font: Font) -> Self

Sets the font to use.

The default is Font::System16.

Source

pub fn foreground(self, foreground: Block) -> Self

Sets the “foreground color”, or rather voxel, for the text.

This block is interpreted as a voxel in the same way as a block in a Primitive::Recur space would be. However, the result of evaluating this block not cached. Therefore, it is highly recommended that the block be stored in a block::BlockDef (which does cache) if it is not trivial, particularly if this text is going to span multiple blocks.

The default value is Block::from(all_is_cubes_content::palette::ALMOST_BLACK).

Source

pub fn outline(self, outline: Option<Block>) -> Self

Sets the outline color for the text.

This appears 1 voxel behind and to the side of the main color; making the overall text 2 voxels thick.

See Self::foreground() for information about how the block is used.

The default value is None.

Source

pub fn resolution(self, resolution: Resolution) -> Self

Sets the voxel resolution to use.

This affects the size of the text, including its thickness, and the units of layout_bounds.

The default is 16.

Source

pub fn positioning(self, positioning: Positioning) -> Self

Sets the position of the text within (or extending out of) the layout_bounds.

The default is:

Positioning {
    x: PositioningX::Center,
    line_y: PositioningY::BodyMiddle,
    z: PositioningZ::Back,
}
Source

pub fn layout_bounds(self, resolution: Resolution, bounds: GridAab) -> Self

Sets the voxel bounding box within which the text is positioned, as well as the resolution since that determines the coordinate system scale.

The text might overflow this box; it is currently used only to choose the positioning of the text and cannot constrain it.

Source

pub fn debug(self, debug: bool) -> Self

Sets the debug-rendering flag.

If true, then the text rendering is modified in an unspecified way which is intended to assist in diagnosing issues with text layout configuration. In particular, this currently includes:

  • The region which is in bounds but not filled by a character is filled with a semi-transparent marker color instead of being transparent.
  • If a Primitive::Text block’s bounds fail to intersect its Text, then the block is filled with a marker color.

Trait Implementations§

Source§

impl Clone for TextBuilder

Source§

fn clone(&self) -> TextBuilder

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for TextBuilder

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for TextBuilder

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Az for T

Source§

fn az<Dst>(self) -> Dst
where T: Cast<Dst>,

Casts the value.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<Src, Dst> CastFrom<Src> for Dst
where Src: Cast<Dst>,

Source§

fn cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> CheckedAs for T

Source§

fn checked_as<Dst>(self) -> Option<Dst>
where T: CheckedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> CheckedCastFrom<Src> for Dst
where Src: CheckedCast<Dst>,

Source§

fn checked_cast_from(src: Src) -> Option<Dst>

Casts the value.
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> FromWorld for T
where T: Default,

Source§

fn from_world(_world: &mut World) -> T

Creates Self using default().

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> OverflowingAs for T

Source§

fn overflowing_as<Dst>(self) -> (Dst, bool)
where T: OverflowingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> OverflowingCastFrom<Src> for Dst
where Src: OverflowingCast<Dst>,

Source§

fn overflowing_cast_from(src: Src) -> (Dst, bool)

Casts the value.
Source§

impl<T> SaturatingAs for T

Source§

fn saturating_as<Dst>(self) -> Dst
where T: SaturatingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> SaturatingCastFrom<Src> for Dst
where Src: SaturatingCast<Dst>,

Source§

fn saturating_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> UnwrappedAs for T

Source§

fn unwrapped_as<Dst>(self) -> Dst
where T: UnwrappedCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> UnwrappedCastFrom<Src> for Dst
where Src: UnwrappedCast<Dst>,

Source§

fn unwrapped_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> WrappingAs for T

Source§

fn wrapping_as<Dst>(self) -> Dst
where T: WrappingCast<Dst>,

Casts the value.
Source§

impl<Src, Dst> WrappingCastFrom<Src> for Dst
where Src: WrappingCast<Dst>,

Source§

fn wrapping_cast_from(src: Src) -> Dst

Casts the value.
Source§

impl<T> ConditionalSend for T
where T: Send,