pub struct SoftwareTextMeasurer { /* private fields */ }Implementations§
Source§impl SoftwareTextMeasurer
impl SoftwareTextMeasurer
pub fn new(font: SoftwareTextFont, cache_capacity: usize) -> Self
pub fn from_font_set(fonts: SoftwareTextFontSet, cache_capacity: usize) -> Self
pub fn from_fonts_or_default(fonts: &[&[u8]], cache_capacity: usize) -> Self
Trait Implementations§
Source§impl TextMeasurer for SoftwareTextMeasurer
impl TextMeasurer for SoftwareTextMeasurer
fn measure(&self, text: &AnnotatedString, style: &TextStyle) -> TextMetrics
fn measure_subsequence( &self, text: &AnnotatedString, range: Range<usize>, style: &TextStyle, ) -> TextMetrics
fn measure_line_prefix_widths( &self, text: &AnnotatedString, line_range: Range<usize>, style: &TextStyle, ) -> Option<TextLinePrefixWidths>
fn measure_line_width( &self, text: &AnnotatedString, line_range: Range<usize>, style: &TextStyle, ) -> Option<f32>
fn line_height(&self, text: &AnnotatedString, style: &TextStyle) -> f32
Source§fn glyph_line_box(&self, style: &TextStyle) -> Option<(f32, f32)>
fn glyph_line_box(&self, style: &TextStyle) -> Option<(f32, f32)>
The tight glyph box of a text line inside its
line_height slot:
(top_offset, height) in logical units, where height is the font’s
natural ascent+descent extent and top_offset positions it within the
slot (glyph rows are vertically centered). Selection chrome — the
highlight, the caret and the finger handles — anchors to THIS box,
not the full slot: with a paragraph line height above the natural one
the reference shows gaps between highlighted lines and handles riding
the glyphs. None means the box fills the slot.fn get_offset_for_position( &self, text: &AnnotatedString, style: &TextStyle, x: f32, y: f32, ) -> usize
fn get_cursor_x_for_offset( &self, text: &AnnotatedString, style: &TextStyle, offset: usize, ) -> f32
fn layout(&self, text: &AnnotatedString, style: &TextStyle) -> TextLayoutResult
Source§fn choose_auto_hyphen_break(
&self,
line: &str,
style: &TextStyle,
segment_start_char: usize,
measured_break_char: usize,
) -> Option<usize>
fn choose_auto_hyphen_break( &self, line: &str, style: &TextStyle, segment_start_char: usize, measured_break_char: usize, ) -> Option<usize>
Returns an alternate break boundary for
Hyphens::Auto when a greedy break
split lands in the middle of a word. Read morefn measure_for_node( &self, node_id: Option<usize>, text: &AnnotatedString, style: &TextStyle, ) -> TextMetrics
fn measure_subsequence_for_node( &self, node_id: Option<usize>, text: &AnnotatedString, range: Range<usize>, style: &TextStyle, ) -> TextMetrics
fn line_height_for_node( &self, node_id: Option<usize>, text: &AnnotatedString, style: &TextStyle, ) -> f32
fn measure_with_options( &self, text: &AnnotatedString, style: &TextStyle, options: TextLayoutOptions, max_width: Option<f32>, ) -> TextMetrics
fn measure_with_options_for_node( &self, node_id: Option<usize>, text: &AnnotatedString, style: &TextStyle, options: TextLayoutOptions, max_width: Option<f32>, ) -> TextMetrics
fn prepare_with_options( &self, text: &AnnotatedString, style: &TextStyle, options: TextLayoutOptions, max_width: Option<f32>, ) -> PreparedTextLayout
fn prepare_with_options_for_node( &self, node_id: Option<usize>, text: &AnnotatedString, style: &TextStyle, options: TextLayoutOptions, max_width: Option<f32>, ) -> PreparedTextLayout
fn prepare_with_options_fallback( &self, text: &AnnotatedString, style: &TextStyle, options: TextLayoutOptions, max_width: Option<f32>, ) -> PreparedTextLayout
Auto Trait Implementations§
impl !Freeze for SoftwareTextMeasurer
impl !RefUnwindSafe for SoftwareTextMeasurer
impl !Send for SoftwareTextMeasurer
impl !Sync for SoftwareTextMeasurer
impl !UnwindSafe for SoftwareTextMeasurer
impl Unpin for SoftwareTextMeasurer
impl UnsafeUnpin for SoftwareTextMeasurer
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