263 {
264 struct FillAndName {
267 };
268 constexpr FillAndName gFills[] = {
273 };
274 struct StyleAndName {
277 };
278 constexpr StyleAndName
gStyles[] = {
282 };
283 struct CapAndName {
287 };
288 constexpr CapAndName gCaps[] = {
292 };
293 struct PathAndName {
296 };
303 path.fName =
"moveTo-cubic-close";
304
309 const char title[] = "Cubic Closed Drawn Into Rectangle Clips With "
310 "Indicated Style, Fill and Linecaps, with stroke width 10";
311 canvas->
drawString(title, 20, 20, font, titlePaint);
312
318 for (size_t cap = 0; cap < std::size(gCaps); ++cap) {
319 if (0 < cap) {
321 }
323 for (size_t fill = 0; fill < std::size(gFills); ++fill) {
324 if (0 < fill) {
326 }
328 for (
size_t style = 0; style < std::size(
gStyles); ++style) {
329 if (0 < style) {
331 }
332
334 this->drawPath(
path.fPath, canvas,
color, rect,
335 gCaps[cap].fCap, gCaps[cap].fJoin,
gStyles[style].fStyle,
337
344
352 }
354 }
356 }
359 }
SkStrokeRec::Style fStyle
constexpr SkColor SK_ColorBLACK
void drawRect(const SkRect &rect, const SkPaint &paint)
void translate(SkScalar dx, SkScalar dy)
void drawString(const char str[], SkScalar x, SkScalar y, const SkFont &font, const SkPaint &paint)
@ kButt_Cap
no stroke extension
void setStyle(Style style)
void setColor(SkColor color)
void setAntiAlias(bool aa)
@ kStroke_Style
set to stroke geometry
@ kFill_Style
set to fill geometry
@ kStrokeAndFill_Style
sets to stroke and fill geometry
@ kBevel_Join
connects outside edges
void setStrokeWidth(SkScalar width)
sk_sp< SkBlender > blender SkRect rect
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir path
font
Font Metadata and Metrics.
static constexpr SkRect MakeWH(float w, float h)
static constexpr SkFontStyle gStyles[]