pub struct MathConstants<'a> { /* private fields */ }Expand description
Implementations§
Source§impl<'a> MathConstants<'a>
impl<'a> MathConstants<'a>
pub const MIN_SIZE: usize
Sourcepub fn resolve_offset<O: Offset, R: FontRead<'a, Args = ()>>(
&self,
offset: O,
) -> Result<R, ReadError>
pub fn resolve_offset<O: Offset, R: FontRead<'a, Args = ()>>( &self, offset: O, ) -> Result<R, ReadError>
Resolve the provided offset from the start of this table.
Sourcepub fn offset_data(&self) -> FontData<'a>
pub fn offset_data(&self) -> FontData<'a>
Return a reference to this table’s raw data.
We use this in the compile crate to resolve offsets.
Sourcepub fn shape(&self) -> &Self
👎Deprecated: just use the base type directly
pub fn shape(&self) -> &Self
just use the base type directly
Return a reference to the table’s ‘Shape’ struct.
This is a low level implementation detail, but it can be useful in some cases where you want to know things about a table’s layout, such as the byte offsets of specific fields.
Sourcepub fn script_percent_scale_down(&self) -> i16
pub fn script_percent_scale_down(&self) -> i16
Percentage of scaling down for level 1 superscripts and subscripts.
Sourcepub fn script_script_percent_scale_down(&self) -> i16
pub fn script_script_percent_scale_down(&self) -> i16
Percentage of scaling down for level 2 (scriptScript) superscripts and subscripts.
Sourcepub fn delimited_sub_formula_min_height(&self) -> UfWord
pub fn delimited_sub_formula_min_height(&self) -> UfWord
Minimum height required for a delimited expression (contained within parentheses, etc.) to be treated as a sub-formula.
Sourcepub fn display_operator_min_height(&self) -> UfWord
pub fn display_operator_min_height(&self) -> UfWord
Minimum height of n-ary operators (such as integral and summation) for formulas in display mode (that is, appearing as standalone page elements, not embedded inline within text).
Sourcepub fn math_leading(&self) -> &'a MathValueRecord
pub fn math_leading(&self) -> &'a MathValueRecord
White space to be left between math formulas to ensure proper line spacing.
Sourcepub fn axis_height(&self) -> &'a MathValueRecord
pub fn axis_height(&self) -> &'a MathValueRecord
Axis height of the font.
Sourcepub fn accent_base_height(&self) -> &'a MathValueRecord
pub fn accent_base_height(&self) -> &'a MathValueRecord
Maximum (ink) height of accent base that does not require raising the accents.
Sourcepub fn flattened_accent_base_height(&self) -> &'a MathValueRecord
pub fn flattened_accent_base_height(&self) -> &'a MathValueRecord
Maximum (ink) height of accent base that does not require flattening the accents.
Sourcepub fn subscript_shift_down(&self) -> &'a MathValueRecord
pub fn subscript_shift_down(&self) -> &'a MathValueRecord
The standard shift down applied to subscript elements.
Sourcepub fn subscript_top_max(&self) -> &'a MathValueRecord
pub fn subscript_top_max(&self) -> &'a MathValueRecord
Maximum allowed height of the (ink) top of subscripts that does not require moving subscripts further down.
Sourcepub fn subscript_baseline_drop_min(&self) -> &'a MathValueRecord
pub fn subscript_baseline_drop_min(&self) -> &'a MathValueRecord
Minimum allowed drop of the baseline of subscripts relative to the (ink) bottom of the base.
Sourcepub fn superscript_shift_up(&self) -> &'a MathValueRecord
pub fn superscript_shift_up(&self) -> &'a MathValueRecord
Standard shift up applied to superscript elements.
Sourcepub fn superscript_shift_up_cramped(&self) -> &'a MathValueRecord
pub fn superscript_shift_up_cramped(&self) -> &'a MathValueRecord
Standard shift of superscripts relative to the base, in cramped style.
Sourcepub fn superscript_bottom_min(&self) -> &'a MathValueRecord
pub fn superscript_bottom_min(&self) -> &'a MathValueRecord
Minimum allowed height of the (ink) bottom of superscripts that does not require moving subscripts further up.
Sourcepub fn superscript_baseline_drop_max(&self) -> &'a MathValueRecord
pub fn superscript_baseline_drop_max(&self) -> &'a MathValueRecord
Maximum allowed drop of the baseline of superscripts relative to the (ink) top of the base.
Sourcepub fn sub_superscript_gap_min(&self) -> &'a MathValueRecord
pub fn sub_superscript_gap_min(&self) -> &'a MathValueRecord
Minimum gap between the superscript and subscript ink.
Sourcepub fn superscript_bottom_max_with_subscript(&self) -> &'a MathValueRecord
pub fn superscript_bottom_max_with_subscript(&self) -> &'a MathValueRecord
The maximum level to which the (ink) bottom of superscript can be pushed to increase the gap between superscript and subscript, before subscript starts being moved down.
Sourcepub fn space_after_script(&self) -> &'a MathValueRecord
pub fn space_after_script(&self) -> &'a MathValueRecord
Extra white space to be added after each subscript and superscript.
Sourcepub fn upper_limit_gap_min(&self) -> &'a MathValueRecord
pub fn upper_limit_gap_min(&self) -> &'a MathValueRecord
Minimum gap between the (ink) bottom of the upper limit, and the (ink) top of the base operator.
Sourcepub fn upper_limit_baseline_rise_min(&self) -> &'a MathValueRecord
pub fn upper_limit_baseline_rise_min(&self) -> &'a MathValueRecord
Minimum distance between baseline of upper limit and (ink) top of the base operator.
Sourcepub fn lower_limit_gap_min(&self) -> &'a MathValueRecord
pub fn lower_limit_gap_min(&self) -> &'a MathValueRecord
Minimum gap between (ink) top of the lower limit, and (ink) bottom of the base operator.
Sourcepub fn lower_limit_baseline_drop_min(&self) -> &'a MathValueRecord
pub fn lower_limit_baseline_drop_min(&self) -> &'a MathValueRecord
Minimum distance between baseline of the lower limit and (ink) bottom of the base operator.
Sourcepub fn stack_top_shift_up(&self) -> &'a MathValueRecord
pub fn stack_top_shift_up(&self) -> &'a MathValueRecord
Standard shift up applied to the top element of a stack.
Sourcepub fn stack_top_display_style_shift_up(&self) -> &'a MathValueRecord
pub fn stack_top_display_style_shift_up(&self) -> &'a MathValueRecord
Standard shift up applied to the top element of a stack in display style.
Sourcepub fn stack_bottom_shift_down(&self) -> &'a MathValueRecord
pub fn stack_bottom_shift_down(&self) -> &'a MathValueRecord
Standard shift down applied to the bottom element of a stack.
Sourcepub fn stack_bottom_display_style_shift_down(&self) -> &'a MathValueRecord
pub fn stack_bottom_display_style_shift_down(&self) -> &'a MathValueRecord
Standard shift down applied to the bottom element of a stack in display style.
Sourcepub fn stack_gap_min(&self) -> &'a MathValueRecord
pub fn stack_gap_min(&self) -> &'a MathValueRecord
Minimum gap between (ink) bottom of the top element of a stack, and the (ink) top of the bottom element.
Sourcepub fn stack_display_style_gap_min(&self) -> &'a MathValueRecord
pub fn stack_display_style_gap_min(&self) -> &'a MathValueRecord
Minimum gap between (ink) bottom of the top element of a stack, and the (ink) top of the bottom element in display style.
Sourcepub fn stretch_stack_top_shift_up(&self) -> &'a MathValueRecord
pub fn stretch_stack_top_shift_up(&self) -> &'a MathValueRecord
Standard shift up applied to the top element of the stretch stack.
Sourcepub fn stretch_stack_bottom_shift_down(&self) -> &'a MathValueRecord
pub fn stretch_stack_bottom_shift_down(&self) -> &'a MathValueRecord
Standard shift down applied to the bottom element of the stretch stack.
Sourcepub fn stretch_stack_gap_above_min(&self) -> &'a MathValueRecord
pub fn stretch_stack_gap_above_min(&self) -> &'a MathValueRecord
Minimum gap between the ink of the stretched element, and the (ink) bottom of the element above.
Sourcepub fn stretch_stack_gap_below_min(&self) -> &'a MathValueRecord
pub fn stretch_stack_gap_below_min(&self) -> &'a MathValueRecord
Minimum gap between the ink of the stretched element, and the (ink) top of the element below.
Sourcepub fn fraction_numerator_shift_up(&self) -> &'a MathValueRecord
pub fn fraction_numerator_shift_up(&self) -> &'a MathValueRecord
Standard shift up applied to the numerator.
Sourcepub fn fraction_numerator_display_style_shift_up(&self) -> &'a MathValueRecord
pub fn fraction_numerator_display_style_shift_up(&self) -> &'a MathValueRecord
Standard shift up applied to the numerator in display style.
Sourcepub fn fraction_denominator_shift_down(&self) -> &'a MathValueRecord
pub fn fraction_denominator_shift_down(&self) -> &'a MathValueRecord
Standard shift down applied to the denominator.
Sourcepub fn fraction_denominator_display_style_shift_down(
&self,
) -> &'a MathValueRecord
pub fn fraction_denominator_display_style_shift_down( &self, ) -> &'a MathValueRecord
Standard shift down applied to the denominator in display style.
Sourcepub fn fraction_numerator_gap_min(&self) -> &'a MathValueRecord
pub fn fraction_numerator_gap_min(&self) -> &'a MathValueRecord
Minimum tolerated gap between the (ink) bottom of the numerator and the ink of the fraction bar.
Sourcepub fn fraction_num_display_style_gap_min(&self) -> &'a MathValueRecord
pub fn fraction_num_display_style_gap_min(&self) -> &'a MathValueRecord
Minimum tolerated gap between the (ink) bottom of the numerator and the ink of the fraction bar in display style.
Sourcepub fn fraction_rule_thickness(&self) -> &'a MathValueRecord
pub fn fraction_rule_thickness(&self) -> &'a MathValueRecord
Thickness of the fraction bar.
Sourcepub fn fraction_denominator_gap_min(&self) -> &'a MathValueRecord
pub fn fraction_denominator_gap_min(&self) -> &'a MathValueRecord
Minimum tolerated gap between the ink of the fraction bar and the (ink) top of the denominator.
Sourcepub fn fraction_denom_display_style_gap_min(&self) -> &'a MathValueRecord
pub fn fraction_denom_display_style_gap_min(&self) -> &'a MathValueRecord
Minimum tolerated gap between the ink of the fraction bar and the (ink) top of the denominator in display style.
Sourcepub fn skewed_fraction_horizontal_gap(&self) -> &'a MathValueRecord
pub fn skewed_fraction_horizontal_gap(&self) -> &'a MathValueRecord
Horizontal distance between the top and bottom elements of a skewed fraction.
Sourcepub fn skewed_fraction_vertical_gap(&self) -> &'a MathValueRecord
pub fn skewed_fraction_vertical_gap(&self) -> &'a MathValueRecord
Vertical distance between the ink of the top and bottom elements of a skewed fraction.
Sourcepub fn overbar_vertical_gap(&self) -> &'a MathValueRecord
pub fn overbar_vertical_gap(&self) -> &'a MathValueRecord
Distance between the overbar and the (ink) top of he base.
Sourcepub fn overbar_rule_thickness(&self) -> &'a MathValueRecord
pub fn overbar_rule_thickness(&self) -> &'a MathValueRecord
Thickness of overbar.
Sourcepub fn overbar_extra_ascender(&self) -> &'a MathValueRecord
pub fn overbar_extra_ascender(&self) -> &'a MathValueRecord
Extra white space reserved above the overbar.
Sourcepub fn underbar_vertical_gap(&self) -> &'a MathValueRecord
pub fn underbar_vertical_gap(&self) -> &'a MathValueRecord
Distance between underbar and (ink) bottom of the base.
Sourcepub fn underbar_rule_thickness(&self) -> &'a MathValueRecord
pub fn underbar_rule_thickness(&self) -> &'a MathValueRecord
Thickness of underbar.
Sourcepub fn underbar_extra_descender(&self) -> &'a MathValueRecord
pub fn underbar_extra_descender(&self) -> &'a MathValueRecord
Extra white space reserved below the underbar.
Sourcepub fn radical_vertical_gap(&self) -> &'a MathValueRecord
pub fn radical_vertical_gap(&self) -> &'a MathValueRecord
Space between the (ink) top of the expression and the bar over it.
Sourcepub fn radical_display_style_vertical_gap(&self) -> &'a MathValueRecord
pub fn radical_display_style_vertical_gap(&self) -> &'a MathValueRecord
Space between the (ink) top of the expression and the bar over it in display style.
Sourcepub fn radical_rule_thickness(&self) -> &'a MathValueRecord
pub fn radical_rule_thickness(&self) -> &'a MathValueRecord
Thickness of the radical rule.
Sourcepub fn radical_extra_ascender(&self) -> &'a MathValueRecord
pub fn radical_extra_ascender(&self) -> &'a MathValueRecord
Extra white space reserved above the radical.
Sourcepub fn radical_kern_before_degree(&self) -> &'a MathValueRecord
pub fn radical_kern_before_degree(&self) -> &'a MathValueRecord
Extra horizontal kern before the degree of a radical, if such is present.
Sourcepub fn radical_kern_after_degree(&self) -> &'a MathValueRecord
pub fn radical_kern_after_degree(&self) -> &'a MathValueRecord
Negative kern after the degree of a radical, if such is present.
Sourcepub fn radical_degree_bottom_raise_percent(&self) -> i16
pub fn radical_degree_bottom_raise_percent(&self) -> i16
Height of the bottom of the radical degree, if such is present, in proportion to the ascender of the radical sign.
pub fn script_percent_scale_down_byte_range(&self) -> Range<usize> ⓘ
pub fn script_script_percent_scale_down_byte_range(&self) -> Range<usize> ⓘ
pub fn delimited_sub_formula_min_height_byte_range(&self) -> Range<usize> ⓘ
pub fn display_operator_min_height_byte_range(&self) -> Range<usize> ⓘ
pub fn math_leading_byte_range(&self) -> Range<usize> ⓘ
pub fn axis_height_byte_range(&self) -> Range<usize> ⓘ
pub fn accent_base_height_byte_range(&self) -> Range<usize> ⓘ
pub fn flattened_accent_base_height_byte_range(&self) -> Range<usize> ⓘ
pub fn subscript_shift_down_byte_range(&self) -> Range<usize> ⓘ
pub fn subscript_top_max_byte_range(&self) -> Range<usize> ⓘ
pub fn subscript_baseline_drop_min_byte_range(&self) -> Range<usize> ⓘ
pub fn superscript_shift_up_byte_range(&self) -> Range<usize> ⓘ
pub fn superscript_shift_up_cramped_byte_range(&self) -> Range<usize> ⓘ
pub fn superscript_bottom_min_byte_range(&self) -> Range<usize> ⓘ
pub fn superscript_baseline_drop_max_byte_range(&self) -> Range<usize> ⓘ
pub fn sub_superscript_gap_min_byte_range(&self) -> Range<usize> ⓘ
pub fn superscript_bottom_max_with_subscript_byte_range(&self) -> Range<usize> ⓘ
pub fn space_after_script_byte_range(&self) -> Range<usize> ⓘ
pub fn upper_limit_gap_min_byte_range(&self) -> Range<usize> ⓘ
pub fn upper_limit_baseline_rise_min_byte_range(&self) -> Range<usize> ⓘ
pub fn lower_limit_gap_min_byte_range(&self) -> Range<usize> ⓘ
pub fn lower_limit_baseline_drop_min_byte_range(&self) -> Range<usize> ⓘ
pub fn stack_top_shift_up_byte_range(&self) -> Range<usize> ⓘ
pub fn stack_top_display_style_shift_up_byte_range(&self) -> Range<usize> ⓘ
pub fn stack_bottom_shift_down_byte_range(&self) -> Range<usize> ⓘ
pub fn stack_bottom_display_style_shift_down_byte_range(&self) -> Range<usize> ⓘ
pub fn stack_gap_min_byte_range(&self) -> Range<usize> ⓘ
pub fn stack_display_style_gap_min_byte_range(&self) -> Range<usize> ⓘ
pub fn stretch_stack_top_shift_up_byte_range(&self) -> Range<usize> ⓘ
pub fn stretch_stack_bottom_shift_down_byte_range(&self) -> Range<usize> ⓘ
pub fn stretch_stack_gap_above_min_byte_range(&self) -> Range<usize> ⓘ
pub fn stretch_stack_gap_below_min_byte_range(&self) -> Range<usize> ⓘ
pub fn fraction_numerator_shift_up_byte_range(&self) -> Range<usize> ⓘ
pub fn fraction_numerator_display_style_shift_up_byte_range( &self, ) -> Range<usize> ⓘ
pub fn fraction_denominator_shift_down_byte_range(&self) -> Range<usize> ⓘ
pub fn fraction_denominator_display_style_shift_down_byte_range( &self, ) -> Range<usize> ⓘ
pub fn fraction_numerator_gap_min_byte_range(&self) -> Range<usize> ⓘ
pub fn fraction_num_display_style_gap_min_byte_range(&self) -> Range<usize> ⓘ
pub fn fraction_rule_thickness_byte_range(&self) -> Range<usize> ⓘ
pub fn fraction_denominator_gap_min_byte_range(&self) -> Range<usize> ⓘ
pub fn fraction_denom_display_style_gap_min_byte_range(&self) -> Range<usize> ⓘ
pub fn skewed_fraction_horizontal_gap_byte_range(&self) -> Range<usize> ⓘ
pub fn skewed_fraction_vertical_gap_byte_range(&self) -> Range<usize> ⓘ
pub fn overbar_vertical_gap_byte_range(&self) -> Range<usize> ⓘ
pub fn overbar_rule_thickness_byte_range(&self) -> Range<usize> ⓘ
pub fn overbar_extra_ascender_byte_range(&self) -> Range<usize> ⓘ
pub fn underbar_vertical_gap_byte_range(&self) -> Range<usize> ⓘ
pub fn underbar_rule_thickness_byte_range(&self) -> Range<usize> ⓘ
pub fn underbar_extra_descender_byte_range(&self) -> Range<usize> ⓘ
pub fn radical_vertical_gap_byte_range(&self) -> Range<usize> ⓘ
pub fn radical_display_style_vertical_gap_byte_range(&self) -> Range<usize> ⓘ
pub fn radical_rule_thickness_byte_range(&self) -> Range<usize> ⓘ
pub fn radical_extra_ascender_byte_range(&self) -> Range<usize> ⓘ
pub fn radical_kern_before_degree_byte_range(&self) -> Range<usize> ⓘ
pub fn radical_kern_after_degree_byte_range(&self) -> Range<usize> ⓘ
pub fn radical_degree_bottom_raise_percent_byte_range(&self) -> Range<usize> ⓘ
Source§impl MathConstants<'_>
impl MathConstants<'_>
Sourcepub fn constant(&self, constant: MathConstant) -> i32
pub fn constant(&self, constant: MathConstant) -> i32
The value of a constant, in design units.
Sourcepub fn constant_for_ppem(&self, constant: MathConstant, ppem: u16) -> MathValue
pub fn constant_for_ppem(&self, constant: MathConstant, ppem: u16) -> MathValue
The value of a constant, as read at a size.
The four percentages and the two minimum heights are stored as
bare integers, so their delta_px is
always zero.