Struct piet::LineMetric
source · pub struct LineMetric {
pub start_offset: usize,
pub end_offset: usize,
pub trailing_whitespace: usize,
pub baseline: f64,
pub height: f64,
pub y_offset: f64,
}
Expand description
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§
source§impl LineMetric
impl LineMetric
sourcepub fn range(&self) -> Range<usize>
pub fn range(&self) -> Range<usize>
The utf-8 range in the underlying String
used to create the
TextLayout
to which this line belongs.
Trait Implementations§
source§impl Clone for LineMetric
impl Clone for LineMetric
source§fn clone(&self) -> LineMetric
fn clone(&self) -> LineMetric
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for LineMetric
impl Debug for LineMetric
source§impl Default for LineMetric
impl Default for LineMetric
source§fn default() -> LineMetric
fn default() -> LineMetric
source§impl PartialEq<LineMetric> for LineMetric
impl PartialEq<LineMetric> for LineMetric
source§fn eq(&self, other: &LineMetric) -> bool
fn eq(&self, other: &LineMetric) -> bool
self
and other
values to be equal, and is used
by ==
.