pub struct TextRasterRequest {
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>,
}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-size multiples.
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.
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.