Struct ParagraphOptions
pub struct ParagraphOptions {
pub line_width: f32,
pub tolerance: f32,
pub space_stretch: f32,
pub space_shrink: f32,
pub line_penalty: f64,
pub fitness_demerit: f64,
pub flagged_demerit: f64,
pub max_glyph_expansion: f32,
pub expansion_demerit: f64,
pub justify: bool,
}Expand description
Tunable paragraph-composition policy. Defaults are deliberately close to TeX’s ordinary prose behavior while remaining expressed in font-relative space capacities supplied by the caller.
Fields§
§line_width: f32§tolerance: f32Maximum normalized stretch accepted for an ordinary line.
space_stretch: f32Fraction of each natural glue that may stretch.
space_shrink: f32Fraction of each natural glue that may shrink.
line_penalty: f64§fitness_demerit: f64§flagged_demerit: f64§max_glyph_expansion: f32Maximum horizontal glyph expansion/contraction used to improve colour without making individual spaces conspicuously loose or tight.
expansion_demerit: f64Cost of using the full configured expansion. Larger values prefer inter-word glue; smaller values prefer micro-expansion.
justify: boolJustify non-final lines. When false, the same global break search is used but output glue remains natural.
Implementations§
§impl ParagraphOptions
impl ParagraphOptions
pub fn new(line_width: f32) -> ParagraphOptions
Trait Implementations§
§impl Clone for ParagraphOptions
impl Clone for ParagraphOptions
§fn clone(&self) -> ParagraphOptions
fn clone(&self) -> ParagraphOptions
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read more§impl Debug for ParagraphOptions
impl Debug for ParagraphOptions
§impl PartialEq for ParagraphOptions
impl PartialEq for ParagraphOptions
§fn eq(&self, other: &ParagraphOptions) -> bool
fn eq(&self, other: &ParagraphOptions) -> bool
Tests for
self and other values to be equal, and is used by ==.impl Copy for ParagraphOptions
impl StructuralPartialEq for ParagraphOptions
Auto Trait Implementations§
impl Freeze for ParagraphOptions
impl RefUnwindSafe for ParagraphOptions
impl Send for ParagraphOptions
impl Sync for ParagraphOptions
impl Unpin for ParagraphOptions
impl UnsafeUnpin for ParagraphOptions
impl UnwindSafe for ParagraphOptions
Blanket Implementations§
§impl<T> AnyEq for T
impl<T> AnyEq for T
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§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.§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.§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.§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.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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 more