pub(crate) struct FontAndScriptInfo {
pub font: FontRef,
pub script: Script,
pub bidi_level: Level,
pub language: Language,
pub letter_spacing: Option<Au>,
pub word_spacing: Option<Au>,
pub text_rendering: T,
pub kerning: T,
}Expand description
A data structure which contains information used when shaping a TextRunSegment.
Fields§
§font: FontRefThe font used when shaping a TextRunSegment.
script: ScriptThe script used when shaping a TextRunSegment.
bidi_level: LevelThe BiDi Level used when shaping a TextRunSegment.
language: LanguageThe Language used when shaping a TextRunSegment.
letter_spacing: Option<Au>Spacing to add between each letter. Corresponds to the CSS 2.1 letter-spacing property.
NB: You will probably want to set the IGNORE_LIGATURES_SHAPING_FLAG if this is non-null.
Letter spacing is not applied to all characters. Use [Self::letter_spacing_for_character] to determine the amount of spacing to apply.
word_spacing: Option<Au>Spacing to add between each word. Corresponds to the CSS 2.1 word-spacing property.
text_rendering: TThe TextRendering value from the original style.
kerning: TThe value of the font-kerning property from the original style.
Implementations§
Source§impl FontAndScriptInfo
impl FontAndScriptInfo
Sourcepub(crate) fn simple_for_font(font: FontRef) -> Self
pub(crate) fn simple_for_font(font: FontRef) -> Self
Creates a minimal FontAndScriptInfo for a single font, with generic language settings
and the default shaping configuration. This is only used to generate placeholders for
text carets on otherwise empty lines.
Trait Implementations§
Source§impl Clone for FontAndScriptInfo
impl Clone for FontAndScriptInfo
Source§fn clone(&self) -> FontAndScriptInfo
fn clone(&self) -> FontAndScriptInfo
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for FontAndScriptInfo
impl Debug for FontAndScriptInfo
Source§impl From<&FontAndScriptInfo> for ShapingOptions
impl From<&FontAndScriptInfo> for ShapingOptions
Source§fn from(info: &FontAndScriptInfo) -> Self
fn from(info: &FontAndScriptInfo) -> Self
Source§impl MallocSizeOf for FontAndScriptInfo
impl MallocSizeOf for FontAndScriptInfo
Source§fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Source§impl PartialEq for FontAndScriptInfo
impl PartialEq for FontAndScriptInfo
impl StructuralPartialEq for FontAndScriptInfo
Auto Trait Implementations§
impl Freeze for FontAndScriptInfo
impl !RefUnwindSafe for FontAndScriptInfo
impl Send for FontAndScriptInfo
impl Sync for FontAndScriptInfo
impl Unpin for FontAndScriptInfo
impl UnsafeUnpin for FontAndScriptInfo
impl !UnwindSafe for FontAndScriptInfo
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Filterable for T
impl<T> Filterable for T
Source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
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>
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>
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