pub struct TextRasterRequest {Show 13 fields
pub text: String,
pub font_size: f32,
pub max_width: f32,
pub line_height: f32,
pub align: TextAlign,
pub color: [u8; 4],
pub emoji_policy: EmojiPolicy,
pub content_version: u64,
pub outline: Option<TextOutline>,
pub background: Option<TextBackground>,
pub font_family: Option<String>,
pub letter_spacing: f32,
pub font_weight: u16,
}Expand description
One text layout request.
Fields§
§text: StringUTF-8 text shaped by the selected font fallback stack.
font_size: f32Logical font size in pixels.
max_width: f32Maximum layout width. Non-positive values disable wrapping.
line_height: f32Baseline-to-baseline distance in font sizes. Each line’s em box, 0.8 of a font size above its baseline and 0.2 below, is centred in its line when the line is taller than an em.
align: TextAlignPer-line horizontal alignment.
color: [u8; 4]Straight (not premultiplied), sRGB-encoded RGBA color. The output is premultiplied by glyph coverage and this alpha. A color glyph keeps its own colors, but for the parts its font draws in the text’s color, and takes this alpha as its opacity.
emoji_policy: EmojiPolicyWhether color glyphs are drawn in color, and which fonts emoji take.
content_version: u64Caller-managed version. Change it whenever content/style/font inputs change.
outline: Option<TextOutline>A band around the glyphs, drawn behind them.
background: Option<TextBackground>A box behind each line, drawn behind the outline.
font_family: Option<String>The family drawn first, as font_family reads it, matched without
regard to ASCII case; the rest of the stack fills in what it lacks.
None, or a family no font has, keeps the fallback order.
letter_spacing: f32Space added after each typographic character unit (grapheme
cluster), in pixels, as CSS letter-spacing adds it: none after a
line’s last, and none after a character of a cursive script (Arabic,
say), whose joins it would break. Not zero, it turns optional
ligatures off. In [-0.5, 1] font sizes.
font_weight: u16The weight, in [1, 1000], a family’s faces are matched by (CSS
Fonts 4 weight matching), and a variable face’s wght is set to,
clamped to its axis. No face is emboldened: a weight a family lacks
draws its nearest face.
Implementations§
Source§impl TextRasterRequest
impl TextRasterRequest
Sourcepub fn decoration_margin(&self) -> u32
pub fn decoration_margin(&self) -> u32
Pixels the decorations reach past the layout box on every side when
no ink does: the outline’s disc and the background’s padding, whole.
The texture’s margin (TextTexture::layout_x) is this plus room
for ink past the box.