Flutter Engine Uber Docs
Docs for the entire Flutter Engine repo.
 
Loading...
Searching...
No Matches
line_metrics.cc
Go to the documentation of this file.
1// Copyright 2013 The Flutter Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
7#include "third_party/skia/modules/skparagraph/include/Paragraph.h"
8
9SKWASM_EXPORT skia::textlayout::LineMetrics* lineMetrics_create(
10 bool hard_break,
11 double ascent,
12 double descent,
13 double unscaled_ascent,
14 double height,
15 double width,
16 double left,
17 double baseline,
18 size_t line_number) {
20 auto metrics = new skia::textlayout::LineMetrics();
21 metrics->fHardBreak = hard_break;
22 metrics->fAscent = ascent;
23 metrics->fDescent = descent;
24 metrics->fUnscaledAscent = unscaled_ascent;
25 metrics->fHeight = height;
26 metrics->fWidth = width;
27 metrics->fLeft = left;
28 metrics->fBaseline = baseline;
29 metrics->fLineNumber = line_number;
30 return metrics;
31}
32
33SKWASM_EXPORT void lineMetrics_dispose(skia::textlayout::LineMetrics* metrics) {
35 delete metrics;
36}
37
39 skia::textlayout::LineMetrics* metrics) {
40 return metrics->fHardBreak;
41}
42
43SKWASM_EXPORT SkScalar
44lineMetrics_getAscent(skia::textlayout::LineMetrics* metrics) {
45 return metrics->fAscent;
46}
47
48SKWASM_EXPORT SkScalar
49lineMetrics_getDescent(skia::textlayout::LineMetrics* metrics) {
50 return metrics->fDescent;
51}
52
53SKWASM_EXPORT SkScalar
54lineMetrics_getUnscaledAscent(skia::textlayout::LineMetrics* metrics) {
55 return metrics->fUnscaledAscent;
56}
57
58SKWASM_EXPORT SkScalar
59lineMetrics_getHeight(skia::textlayout::LineMetrics* metrics) {
60 return metrics->fHeight;
61}
62
63SKWASM_EXPORT SkScalar
64lineMetrics_getWidth(skia::textlayout::LineMetrics* metrics) {
65 return metrics->fWidth;
66}
67
68SKWASM_EXPORT SkScalar
69lineMetrics_getLeft(skia::textlayout::LineMetrics* metrics) {
70 return metrics->fLeft;
71}
72
73SKWASM_EXPORT SkScalar
74lineMetrics_getBaseline(skia::textlayout::LineMetrics* metrics) {
75 return metrics->fBaseline;
76}
77
79 skia::textlayout::LineMetrics* metrics) {
80 return metrics->fLineNumber;
81}
82
83SKWASM_EXPORT size_t
84lineMetrics_getStartIndex(skia::textlayout::LineMetrics* metrics) {
85 return metrics->fStartIndex;
86}
87
88SKWASM_EXPORT size_t
89lineMetrics_getEndIndex(skia::textlayout::LineMetrics* metrics) {
90 return metrics->fEndIndex;
91}
uint32_t live_line_metrics_count
int32_t height
int32_t width
#define SKWASM_EXPORT
Definition export.h:10
SKWASM_EXPORT SkScalar lineMetrics_getWidth(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT SkScalar lineMetrics_getHeight(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT skia::textlayout::LineMetrics * lineMetrics_create(bool hard_break, double ascent, double descent, double unscaled_ascent, double height, double width, double left, double baseline, size_t line_number)
SKWASM_EXPORT SkScalar lineMetrics_getBaseline(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT SkScalar lineMetrics_getAscent(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT size_t lineMetrics_getStartIndex(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT SkScalar lineMetrics_getUnscaledAscent(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT size_t lineMetrics_getEndIndex(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT int lineMetrics_getLineNumber(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT SkScalar lineMetrics_getLeft(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT void lineMetrics_dispose(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT SkScalar lineMetrics_getDescent(skia::textlayout::LineMetrics *metrics)
SKWASM_EXPORT bool lineMetrics_getHardBreak(skia::textlayout::LineMetrics *metrics)