[−][src]Struct piet::LineMetric
Metadata about each line in a text layout.
Fields
start_offset: usize
The start index of this line in the underlying String
used to create the
TextLayout
to which this line belongs.
end_offset: usize
The end index of this line in the underlying String
used to create the
TextLayout
to which this line belongs.
This is the end of an exclusive range; this index is not part of the line.
Includes trailing whitespace.
trailing_whitespace: usize
The length of the trailing whitespace at the end of this line, in utf-8 code units.
When lines are broken on whitespace (as is common), the whitespace is assigned to the end of the preceding line. Reporting the size of the trailing whitespace section lets an API consumer measure and render only the trimmed line up to the whitespace.
baseline: f64
The distance from the top of the line (y_offset
) to the baseline.
height: f64
The height of the line.
This value is intended to be used to determine the height of features
such as cursors and selection regions. Although it is generally the case
that y_offset + height
for line n
is equal to the y_offset
of
line n + 1
, this is not strictly enforced, and should not be counted on.
y_offset: f64
The y position of the top of this line, relative to the top of the layout.
It should be possible to use this position, in conjunction with height
,
to determine the region that would be used for things like text selection.
Implementations
impl LineMetric
[src]
pub fn range(&self) -> Range<usize>
[src]
The utf-8 range in the underlying String
used to create the
TextLayout
to which this line belongs.
Trait Implementations
impl Clone for LineMetric
[src]
fn clone(&self) -> LineMetric
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for LineMetric
[src]
impl Default for LineMetric
[src]
fn default() -> LineMetric
[src]
impl PartialEq<LineMetric> for LineMetric
[src]
fn eq(&self, other: &LineMetric) -> bool
[src]
fn ne(&self, other: &LineMetric) -> bool
[src]
impl StructuralPartialEq for LineMetric
[src]
Auto Trait Implementations
impl RefUnwindSafe for LineMetric
impl Send for LineMetric
impl Sync for LineMetric
impl Unpin for LineMetric
impl UnwindSafe for LineMetric
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,