17#ifndef LIB_TXT_SRC_PARAGRAPH_SKIA_H_
18#define LIB_TXT_SRC_PARAGRAPH_SKIA_H_
31 ParagraphSkia(std::unique_ptr<skia::textlayout::Paragraph> paragraph,
32 std::vector<flutter::DlPaint>&& dl_paints,
33 bool impeller_enabled);
92 std::unique_ptr<skia::textlayout::Paragraph> paragraph_;
93 std::vector<flutter::DlPaint> dl_paints_;
94 std::optional<std::vector<LineMetrics>> line_metrics_;
95 std::vector<TextStyle> line_metrics_styles_;
96 const bool impeller_enabled_;
double GetMaxIntrinsicWidth() override
bool DidExceedMaxLines() override
double GetHeight() override
ParagraphSkia(std::unique_ptr< skia::textlayout::Paragraph > paragraph, std::vector< flutter::DlPaint > &&dl_paints, bool impeller_enabled)
size_t GetNumberOfLines() const override
PositionWithAffinity GetGlyphPositionAtCoordinate(double dx, double dy) override
virtual ~ParagraphSkia()=default
double GetAlphabeticBaseline() override
bool GetClosestGlyphInfoAtCoordinate(double dx, double dy, skia::textlayout::Paragraph::GlyphInfo *glyphInfo) const override
int GetLineNumberAt(size_t utf16Offset) const override
bool GetLineMetricsAt(int lineNumber, skia::textlayout::LineMetrics *lineMetrics) const override
double GetLongestLine() override
std::vector< LineMetrics > & GetLineMetrics() override
void Layout(double width) override
std::vector< TextBox > GetRectsForRange(size_t start, size_t end, RectHeightStyle rect_height_style, RectWidthStyle rect_width_style) override
std::vector< TextBox > GetRectsForPlaceholders() override
double GetMaxWidth() override
bool Paint(flutter::DisplayListBuilder *builder, double x, double y) override
bool GetGlyphInfoAt(unsigned offset, skia::textlayout::Paragraph::GlyphInfo *glyphInfo) const override
double GetMinIntrinsicWidth() override
Range< size_t > GetWordBoundary(size_t offset) override
double GetIdeographicBaseline() override
skia_private::AutoTArray< sk_sp< SkImageFilter > > filters TypedMatrix matrix TypedMatrix matrix SkScalar dx