tiny.ui.text
Defined in tiny.ui.
API (7)
Actions
Public operations.
Types and contracts
Public types and contracts.
Namespaces
Public namespaces.
Source
Source: lib/ui/src/text/contract.zig:21
zig
pub const LineMetrics = extern struct { ascent: f32 = 0, descent: f32 = 0, leading: f32 = 0,};Source: lib/ui/src/text/contract.zig:16
zig
pub const MetricsRequest = extern struct { style: *const fact.TextStyle, available_width: f32 = 0,};Source: lib/ui/src/text/contract.zig:5
zig
pub const ShapeRequest = extern struct { text: [*]const u8, text_len: u32, source_offset: u32 = 0, style: *const fact.TextStyle, faces: [*]const abi.AssetHandle, face_count: u32, script: u16 = 0, flags: u16 = 0,};Source: lib/ui/src/text/contract.zig:27
zig
pub const Shaper = extern struct { context: ?*anyopaque = null, shape_run: *const fn (?*anyopaque, *const ShapeRequest, [*]fact.Cluster, u32) callconv(.c) u32, line_metrics: *const fn (?*anyopaque, *const MetricsRequest) callconv(.c) LineMetrics, pub fn shape( self: Shaper, request: *const ShapeRequest, output: []fact.Cluster, ) error{OutputTooSmall}![]fact.Cluster { std.debug.assert(output.len <= std.math.maxInt(u32)); const count = self.shape_run(self.context, request, output.ptr, @intCast(output.len)); if (count > output.len) return error.OutputTooSmall; return output[0..count]; } pub fn metrics(self: Shaper, request: *const MetricsRequest) LineMetrics { return self.line_metrics(self.context, request); }};Source: lib/ui/src/root.zig:13
zig
pub const text = @import("text/root.zig");Source: lib/ui/src/text/root.zig
zig
const contract = @import("contract.zig");pub const ShapeRequest = contract.ShapeRequest;pub const MetricsRequest = contract.MetricsRequest;pub const LineMetrics = contract.LineMetrics;pub const Shaper = contract.Shaper;pub const segment = @import("segment.zig");Audit
| Definitions | 7 |
|---|---|
| Public names | 7 |
| Members | 16 |
| Version | 26.7.0 |
| Revision | daab053ee433 |