pub struct LineLayout {
pub font_size: Pixels,
pub width: Pixels,
pub ascent: Pixels,
pub descent: Pixels,
pub runs: Vec<ShapedRun>,
pub len: usize,
}Expand description
A laid out and styled line of text
Fields§
§font_size: PixelsThe font size for this line
width: PixelsThe width of the line
ascent: PixelsThe ascent of the line
descent: PixelsThe descent of the line
runs: Vec<ShapedRun>The shaped runs that make up this line
len: usizeThe length of the line in utf-8 bytes
Implementations§
Source§impl LineLayout
impl LineLayout
Sourcepub fn index_for_x(&self, x: Pixels) -> Option<usize>
pub fn index_for_x(&self, x: Pixels) -> Option<usize>
The index for the character at the given x coordinate
Sourcepub fn closest_index_for_x(&self, x: Pixels) -> usize
pub fn closest_index_for_x(&self, x: Pixels) -> usize
closest_index_for_x returns the character boundary closest to the given x coordinate (e.g. to handle aligning up/down arrow keys)
Sourcepub fn x_for_index(&self, index: usize) -> Pixels
pub fn x_for_index(&self, index: usize) -> Pixels
The x position of the character at the given index
Sourcepub fn font_id_for_index(&self, index: usize) -> Option<FontId>
pub fn font_id_for_index(&self, index: usize) -> Option<FontId>
The corresponding Font at the given index
Trait Implementations§
Source§impl Debug for LineLayout
impl Debug for LineLayout
Source§impl Default for LineLayout
impl Default for LineLayout
Source§fn default() -> LineLayout
fn default() -> LineLayout
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for LineLayout
impl RefUnwindSafe for LineLayout
impl Send for LineLayout
impl Sync for LineLayout
impl Unpin for LineLayout
impl UnwindSafe for LineLayout
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<R, P> ReadPrimitive<R> for P
impl<R, P> ReadPrimitive<R> for P
Source§fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
fn read_from_little_endian(read: &mut R) -> Result<Self, Error>
Read this value from the supplied reader. Same as
ReadEndian::read_from_little_endian().