The canonical output of TextRunPlanner::shape(text, FontOptions). More...
#include <shaped_text.hpp>
Public Member Functions | |
| bool | empty () const noexcept |
Public Attributes | |
| std::string | text |
| Owned UTF-8 copy of the input. | |
| FontOptions | options |
| Full FontOptions blob the shape was produced for. | |
| std::vector< ShapedRun > | runs |
| std::vector< ClusterEntry > | clusters |
| std::vector< LineBreakOpportunity > | line_breaks |
| UnicodeIndexMap | index_map |
| float | total_width = 0.0f |
| Sum of per-run advance_total. | |
| RunMetrics | overall_metrics |
| Worst-case ascent / descent / leading across all runs on a single notional line. | |
The canonical output of TextRunPlanner::shape(text, FontOptions).
Owned, immutable once produced. Consumed by both measurement (TextShaper line layout) and paint (SkiaCanvas); the same instance flows through both pipelines so they cannot diverge.
|
inlinenoexcept |
| std::vector<ClusterEntry> pulp::canvas::ShapedText::clusters |
| UnicodeIndexMap pulp::canvas::ShapedText::index_map |
| std::vector<LineBreakOpportunity> pulp::canvas::ShapedText::line_breaks |
| FontOptions pulp::canvas::ShapedText::options |
Full FontOptions blob the shape was produced for.
| RunMetrics pulp::canvas::ShapedText::overall_metrics |
Worst-case ascent / descent / leading across all runs on a single notional line.
Used for mixed-fontSize line layout (max ascent + max descent).
| std::vector<ShapedRun> pulp::canvas::ShapedText::runs |
| std::string pulp::canvas::ShapedText::text |
Owned UTF-8 copy of the input.
| float pulp::canvas::ShapedText::total_width = 0.0f |
Sum of per-run advance_total.
The width the painter will produce when this ShapedText is rendered on a single line without wrapping.