paint method

  1. @override
void paint(
  1. Canvas canvas,
  2. Size size
)

Called whenever the object needs to paint. The given Canvas has its coordinate space configured such that the origin is at the top left of the box. The area of the box is the size of the size argument.

Paint operations should remain inside the given area. Graphical operations outside the bounds may be silently ignored, clipped, or not clipped. It may sometimes be difficult to guarantee that a certain operation is inside the bounds (e.g., drawing a rectangle whose size is determined by user inputs). In that case, consider calling Canvas.clipRect at the beginning of paint so everything that follows will be guaranteed to only draw within the clipped area.

Implementations should be wary of correctly pairing any calls to Canvas.save/Canvas.saveLayer and Canvas.restore, otherwise all subsequent painting on this canvas may be affected, with potentially hilarious but confusing results.

To paint text on a Canvas, use a TextPainter.

To paint an image on a Canvas:

  1. Obtain an ImageStream, for example by calling ImageProvider.resolve on an AssetImage or NetworkImage object.

  2. Whenever the ImageStream's underlying ImageInfo object changes (see ImageStream.addListener), create a new instance of your custom paint delegate, giving it the new ImageInfo object.

  3. In your delegate's paint method, call the Canvas.drawImage, Canvas.drawImageRect, or Canvas.drawImageNine methods to paint the ImageInfo.image object, applying the ImageInfo.scale value to obtain the correct rendering size.

Implementation

@override
void paint(Canvas canvas, Size size) {
  Path path0 = Path();
  path0.moveTo(size.width * 0.06897778, size.height * 0.3667648);
  path0.cubicTo(
      size.width * 0.06385105,
      size.height * 0.3667648,
      size.width * 0.05906327,
      size.height * 0.3719508,
      size.width * 0.05469922,
      size.height * 0.3825820);
  path0.cubicTo(
      size.width * 0.05033516,
      size.height * 0.3932136,
      size.width * 0.04656425,
      size.height * 0.4082520,
      size.width * 0.04338654,
      size.height * 0.4282200);
  path0.cubicTo(
      size.width * 0.04020882,
      size.height * 0.4481840,
      size.width * 0.03766660,
      size.height * 0.4728200,
      size.width * 0.03580235,
      size.height * 0.5021200);
  path0.cubicTo(
      size.width * 0.03389569,
      size.height * 0.5314200,
      size.width * 0.03296359,
      size.height * 0.5656480,
      size.width * 0.03296359,
      size.height * 0.6045440);
  path0.cubicTo(
      size.width * 0.03296359,
      size.height * 0.6823360,
      size.width * 0.03631078,
      size.height * 0.7406800,
      size.width * 0.04300516,
      size.height * 0.7800920);
  path0.cubicTo(
      size.width * 0.04969961,
      size.height * 0.8195080,
      size.width * 0.05834301,
      size.height * 0.8392120,
      size.width * 0.06897778,
      size.height * 0.8392120);
  path0.cubicTo(
      size.width * 0.07499412,
      size.height * 0.8392120,
      size.width * 0.08016340,
      size.height * 0.8342880,
      size.width * 0.08452745,
      size.height * 0.8241720);
  path0.cubicTo(
      size.width * 0.08889150,
      size.height * 0.8143200,
      size.width * 0.09278954,
      size.height * 0.8034280,
      size.width * 0.09622157,
      size.height * 0.7917600);
  path0.cubicTo(
      size.width * 0.09863660,
      size.height * 0.8023920,
      size.width * 0.1005431,
      size.height * 0.8143200,
      size.width * 0.1020261,
      size.height * 0.8280640);
  path0.cubicTo(
      size.width * 0.1034667,
      size.height * 0.8418080,
      size.width * 0.1042294,
      size.height * 0.8573640,
      size.width * 0.1042294,
      size.height * 0.8752560);
  path0.cubicTo(
      size.width * 0.1042294,
      size.height * 0.9110400,
      size.width * 0.1007974,
      size.height * 0.9403400,
      size.width * 0.09393333,
      size.height * 0.9634200);
  path0.cubicTo(
      size.width * 0.08706993,
      size.height * 0.9864960,
      size.width * 0.07779085,
      size.height * 0.9981640,
      size.width * 0.06613922,
      size.height * 0.9981640);
  path0.cubicTo(
      size.width * 0.05635163,
      size.height * 0.9981640,
      size.width * 0.04741163,
      size.height * 0.9901280,
      size.width * 0.03923431,
      size.height * 0.9737920);
  path0.cubicTo(
      size.width * 0.03109935,
      size.height * 0.9574560,
      size.width * 0.02410830,
      size.height * 0.9328200,
      size.width * 0.01826131,
      size.height * 0.8998880);
  path0.cubicTo(
      size.width * 0.01241431,
      size.height * 0.8667000,
      size.width * 0.007923137,
      size.height * 0.8257280,
      size.width * 0.004745399,
      size.height * 0.7762040);
  path0.cubicTo(size.width * 0.001567680, size.height * 0.7269360, 0,
      size.height * 0.6696280, 0, size.height * 0.6045440);
  path0.cubicTo(
      0,
      size.height * 0.5384240,
      size.width * 0.001694784,
      size.height * 0.4803400,
      size.width * 0.005126725,
      size.height * 0.4305520);
  path0.cubicTo(
      size.width * 0.008558693,
      size.height * 0.3807668,
      size.width * 0.01321935,
      size.height * 0.3392788,
      size.width * 0.01915111,
      size.height * 0.3060880);
  path0.cubicTo(
      size.width * 0.02508281,
      size.height * 0.2728972,
      size.width * 0.03198908,
      size.height * 0.2482636,
      size.width * 0.03986980,
      size.height * 0.2321868);
  path0.cubicTo(
      size.width * 0.04775059,
      size.height * 0.2158508,
      size.width * 0.05618216,
      size.height * 0.2078124,
      size.width * 0.06507980,
      size.height * 0.2078124);
  path0.cubicTo(
      size.width * 0.07656209,
      size.height * 0.2078124,
      size.width * 0.08575621,
      size.height * 0.2202592,
      size.width * 0.09262026,
      size.height * 0.2448928);
  path0.cubicTo(
      size.width * 0.09948366,
      size.height * 0.2695264,
      size.width * 0.1029157,
      size.height * 0.2998648,
      size.width * 0.1029157,
      size.height * 0.3353892);
  path0.cubicTo(
      size.width * 0.1029157,
      size.height * 0.3522436,
      size.width * 0.1021954,
      size.height * 0.3675428,
      size.width * 0.1007124,
      size.height * 0.3810264);
  path0.cubicTo(
      size.width * 0.09927190,
      size.height * 0.3947696,
      size.width * 0.09757712,
      size.height * 0.4056600,
      size.width * 0.09571307,
      size.height * 0.4142160);
  path0.cubicTo(
      size.width * 0.09228105,
      size.height * 0.4028080,
      size.width * 0.08846797,
      size.height * 0.3919172,
      size.width * 0.08427320,
      size.height * 0.3820636);
  path0.cubicTo(
      size.width * 0.08007843,
      size.height * 0.3716916,
      size.width * 0.07495163,
      size.height * 0.3667648,
      size.width * 0.06897778,
      size.height * 0.3667648);
  path0.close();

  Paint paint0Fill = Paint()..style = PaintingStyle.fill;
  paint0Fill.color = color ?? Colors.white;
  canvas.drawPath(path0, paint0Fill);

  Path path1 = Path();
  path1.moveTo(size.width * 0.2470582, size.height * 0.6030120);
  path1.cubicTo(
      size.width * 0.2470582,
      size.height * 0.6639520,
      size.width * 0.2455752,
      size.height * 0.7186640,
      size.width * 0.2425667,
      size.height * 0.7676720);
  path1.cubicTo(
      size.width * 0.2395588,
      size.height * 0.8164200,
      size.width * 0.2353216,
      size.height * 0.8581680,
      size.width * 0.2298137,
      size.height * 0.8929160);
  path1.cubicTo(
      size.width * 0.2243059,
      size.height * 0.9276600,
      size.width * 0.2177386,
      size.height * 0.9541080,
      size.width * 0.2099850,
      size.height * 0.9725200);
  path1.cubicTo(
      size.width * 0.2022732,
      size.height * 0.9909320,
      size.width * 0.1935876,
      size.height * 1.000004,
      size.width * 0.1840124,
      size.height * 1.000004);
  path1.cubicTo(
      size.width * 0.1743941,
      size.height * 1.000004,
      size.width * 0.1657510,
      size.height * 0.9909320,
      size.width * 0.1580392,
      size.height * 0.9725200);
  path1.cubicTo(
      size.width * 0.1503281,
      size.height * 0.9541080,
      size.width * 0.1437183,
      size.height * 0.9279200,
      size.width * 0.1382105,
      size.height * 0.8936920);
  path1.cubicTo(
      size.width * 0.1327026,
      size.height * 0.8594640,
      size.width * 0.1284654,
      size.height * 0.8179760,
      size.width * 0.1254575,
      size.height * 0.7692280);
  path1.cubicTo(
      size.width * 0.1224490,
      size.height * 0.7204760,
      size.width * 0.1209660,
      size.height * 0.6649880,
      size.width * 0.1209660,
      size.height * 0.6030120);
  path1.cubicTo(
      size.width * 0.1209660,
      size.height * 0.5420760,
      size.width * 0.1224490,
      size.height * 0.4873640,
      size.width * 0.1254575,
      size.height * 0.4383560);
  path1.cubicTo(
      size.width * 0.1284654,
      size.height * 0.3896084,
      size.width * 0.1327451,
      size.height * 0.3481200,
      size.width * 0.1383379,
      size.height * 0.3138920);
  path1.cubicTo(
      size.width * 0.1439307,
      size.height * 0.2796640,
      size.width * 0.1505824,
      size.height * 0.2534744,
      size.width * 0.1582935,
      size.height * 0.2350640);
  path1.cubicTo(
      size.width * 0.1660052,
      size.height * 0.2166536,
      size.width * 0.1746059,
      size.height * 0.2075780,
      size.width * 0.1840124,
      size.height * 0.2075780);
  path1.cubicTo(
      size.width * 0.1934608,
      size.height * 0.2075780,
      size.width * 0.2020190,
      size.height * 0.2166536,
      size.width * 0.2097307,
      size.height * 0.2350640);
  path1.cubicTo(
      size.width * 0.2174418,
      size.height * 0.2534744,
      size.width * 0.2240941,
      size.height * 0.2799232,
      size.width * 0.2296869,
      size.height * 0.3146700);
  path1.cubicTo(
      size.width * 0.2352791,
      size.height * 0.3494164,
      size.width * 0.2395588,
      size.height * 0.3911640,
      size.width * 0.2425667,
      size.height * 0.4399120);
  path1.cubicTo(
      size.width * 0.2455327,
      size.height * 0.4886600,
      size.width * 0.2470582,
      size.height * 0.5431160,
      size.width * 0.2470582,
      size.height * 0.6030120);
  path1.close();
  path1.moveTo(size.width * 0.1840124, size.height * 0.3652340);
  path1.cubicTo(
      size.width * 0.1747333,
      size.height * 0.3652340,
      size.width * 0.1674458,
      size.height * 0.3859780,
      size.width * 0.1621497,
      size.height * 0.4274680);
  path1.cubicTo(
      size.width * 0.1568111,
      size.height * 0.4689560,
      size.width * 0.1541837,
      size.height * 0.5275560,
      size.width * 0.1541837,
      size.height * 0.6030120);
  path1.cubicTo(
      size.width * 0.1541837,
      size.height * 0.6797680,
      size.width * 0.1568111,
      size.height * 0.7383680,
      size.width * 0.1620222,
      size.height * 0.7793400);
  path1.cubicTo(
      size.width * 0.1672340,
      size.height * 0.8203080,
      size.width * 0.1746059,
      size.height * 0.8407960,
      size.width * 0.1840124,
      size.height * 0.8407960);
  path1.cubicTo(
      size.width * 0.1934608,
      size.height * 0.8407960,
      size.width * 0.2007902,
      size.height * 0.8200520,
      size.width * 0.2060020,
      size.height * 0.7785600);
  path1.cubicTo(
      size.width * 0.2112137,
      size.height * 0.7370720,
      size.width * 0.2138405,
      size.height * 0.6784720,
      size.width * 0.2138405,
      size.height * 0.6030120);
  path1.cubicTo(
      size.width * 0.2138405,
      size.height * 0.5272960,
      size.width * 0.2111712,
      size.height * 0.4689560,
      size.width * 0.2058752,
      size.height * 0.4274680);
  path1.cubicTo(
      size.width * 0.2005366,
      size.height * 0.3859780,
      size.width * 0.1932490,
      size.height * 0.3652340,
      size.width * 0.1840124,
      size.height * 0.3652340);
  path1.close();

  Paint paint1Fill = Paint()..style = PaintingStyle.fill;
  paint1Fill.color = color ?? Colors.white;
  canvas.drawPath(path1, paint1Fill);

  Path path2 = Path();
  path2.moveTo(size.width * 0.3480255, size.height * 0.3965844);
  path2.cubicTo(
      size.width * 0.3438307,
      size.height * 0.3755812,
      size.width * 0.3381111,
      size.height * 0.3652088,
      size.width * 0.3309078,
      size.height * 0.3652088);
  path2.cubicTo(
      size.width * 0.3259510,
      size.height * 0.3652088,
      size.width * 0.3213327,
      size.height * 0.3688392,
      size.width * 0.3171379,
      size.height * 0.3763588);
  path2.cubicTo(
      size.width * 0.3129431,
      size.height * 0.3836196,
      size.width * 0.3092993,
      size.height * 0.3932136,
      size.width * 0.3062065,
      size.height * 0.4046240);
  path2.lineTo(size.width * 0.3062065, size.height * 0.9748280);
  path2.cubicTo(
      size.width * 0.3046810,
      size.height * 0.9769040,
      size.width * 0.3026052,
      size.height * 0.9794960,
      size.width * 0.3000209,
      size.height * 0.9826080);
  path2.cubicTo(
      size.width * 0.2974359,
      size.height * 0.9857200,
      size.width * 0.2945124,
      size.height * 0.9872760,
      size.width * 0.2912928,
      size.height * 0.9872760);
  path2.cubicTo(
      size.width * 0.2852758,
      size.height * 0.9872760,
      size.width * 0.2808275,
      size.height * 0.9805320,
      size.width * 0.2779039,
      size.height * 0.9667920);
  path2.cubicTo(
      size.width * 0.2749804,
      size.height * 0.9530480,
      size.width * 0.2735399,
      size.height * 0.9289320,
      size.width * 0.2735399,
      size.height * 0.8944440);
  path2.lineTo(size.width * 0.2735399, size.height * 0.3888052);
  path2.cubicTo(
      size.width * 0.2735399,
      size.height * 0.3636532,
      size.width * 0.2743869,
      size.height * 0.3431684,
      size.width * 0.2761242,
      size.height * 0.3273508);
  path2.cubicTo(
      size.width * 0.2778190,
      size.height * 0.3115336,
      size.width * 0.2804882,
      size.height * 0.2964940,
      size.width * 0.2840895,
      size.height * 0.2817136);
  path2.cubicTo(
      size.width * 0.2890471,
      size.height * 0.2607100,
      size.width * 0.2956569,
      size.height * 0.2430776,
      size.width * 0.3039190,
      size.height * 0.2290752);
  path2.cubicTo(
      size.width * 0.3121386,
      size.height * 0.2148136,
      size.width * 0.3212477,
      size.height * 0.2078124,
      size.width * 0.3312046,
      size.height * 0.2078124);
  path2.cubicTo(
      size.width * 0.3488725,
      size.height * 0.2078124,
      size.width * 0.3625582,
      size.height * 0.2316684,
      size.width * 0.3722608,
      size.height * 0.2793800);
  path2.cubicTo(
      size.width * 0.3819634,
      size.height * 0.3270916,
      size.width * 0.3867935,
      size.height * 0.3973624,
      size.width * 0.3867935,
      size.height * 0.4896720);
  path2.lineTo(size.width * 0.3867935, size.height * 0.9748280);
  path2.cubicTo(
      size.width * 0.3854379,
      size.height * 0.9769040,
      size.width * 0.3834039,
      size.height * 0.9794960,
      size.width * 0.3807346,
      size.height * 0.9826080);
  path2.cubicTo(
      size.width * 0.3780654,
      size.height * 0.9857200,
      size.width * 0.3751843,
      size.height * 0.9872760,
      size.width * 0.3721340,
      size.height * 0.9872760);
  path2.cubicTo(
      size.width * 0.3659477,
      size.height * 0.9872760,
      size.width * 0.3614569,
      size.height * 0.9805320,
      size.width * 0.3586176,
      size.height * 0.9667920);
  path2.cubicTo(
      size.width * 0.3557791,
      size.height * 0.9530480,
      size.width * 0.3543810,
      size.height * 0.9289320,
      size.width * 0.3543810,
      size.height * 0.8944440);
  path2.lineTo(size.width * 0.3543810, size.height * 0.4958960);
  path2.cubicTo(
      size.width * 0.3543386,
      size.height * 0.4507800,
      size.width * 0.3522627,
      size.height * 0.4175880,
      size.width * 0.3480255,
      size.height * 0.3965844);
  path2.close();

  Paint paint2Fill = Paint()..style = PaintingStyle.fill;
  paint2Fill.color = color ?? Colors.white;
  canvas.drawPath(path2, paint2Fill);

  Path path3 = Path();
  path3.moveTo(size.width * 0.4571693, size.height * 0.8171920);
  path3.cubicTo(
      size.width * 0.4605163,
      size.height * 0.8319760,
      size.width * 0.4651771,
      size.height * 0.8392360,
      size.width * 0.4711935,
      size.height * 0.8392360);
  path3.cubicTo(
      size.width * 0.4741170,
      size.height * 0.8392360,
      size.width * 0.4770830,
      size.height * 0.8371600,
      size.width * 0.4800915,
      size.height * 0.8330120);
  path3.cubicTo(
      size.width * 0.4830993,
      size.height * 0.8288640,
      size.width * 0.4858111,
      size.height * 0.8236760,
      size.width * 0.4881843,
      size.height * 0.8171920);
  path3.cubicTo(
      size.width * 0.4895399,
      size.height * 0.8254920,
      size.width * 0.4907261,
      size.height * 0.8358640,
      size.width * 0.4916582,
      size.height * 0.8477920);
  path3.cubicTo(
      size.width * 0.4925902,
      size.height * 0.8599800,
      size.width * 0.4930562,
      size.height * 0.8737200,
      size.width * 0.4930562,
      size.height * 0.8895400);
  path3.cubicTo(
      size.width * 0.4930562,
      size.height * 0.9209160,
      size.width * 0.4907261,
      size.height * 0.9471040,
      size.width * 0.4861078,
      size.height * 0.9675880);
  path3.cubicTo(
      size.width * 0.4814895,
      size.height * 0.9880720,
      size.width * 0.4740327,
      size.height * 0.9981880,
      size.width * 0.4637366,
      size.height * 0.9981880);
  path3.cubicTo(
      size.width * 0.4501784,
      size.height * 0.9981880,
      size.width * 0.4395013,
      size.height * 0.9795160,
      size.width * 0.4317052,
      size.height * 0.9421760);
  path3.cubicTo(
      size.width * 0.4239092,
      size.height * 0.9048400,
      size.width * 0.4200111,
      size.height * 0.8431240,
      size.width * 0.4200111,
      size.height * 0.7570360);
  path3.lineTo(size.width * 0.4200111, size.height * 0.03436044);
  path3.cubicTo(
      size.width * 0.4213673,
      size.height * 0.03228604,
      size.width * 0.4234007,
      size.height * 0.02969312,
      size.width * 0.4260699,
      size.height * 0.02658152);
  path3.cubicTo(
      size.width * 0.4287392,
      size.height * 0.02346988,
      size.width * 0.4316203,
      size.height * 0.02191408,
      size.width * 0.4346712,
      size.height * 0.02191408);
  path3.cubicTo(
      size.width * 0.4406876,
      size.height * 0.02191408,
      size.width * 0.4450941,
      size.height * 0.02865576,
      size.width * 0.4479327,
      size.height * 0.04239880);
  path3.cubicTo(
      size.width * 0.4507719,
      size.height * 0.05614160,
      size.width * 0.4521699,
      size.height * 0.08025680,
      size.width * 0.4521699,
      size.height * 0.1147440);
  path3.lineTo(size.width * 0.4521699, size.height * 0.2454324);
  path3.lineTo(size.width * 0.4900059, size.height * 0.2454324);
  path3.cubicTo(
      size.width * 0.4908536,
      size.height * 0.2537300,
      size.width * 0.4916157,
      size.height * 0.2648800,
      size.width * 0.4923359,
      size.height * 0.2786232);
  path3.cubicTo(
      size.width * 0.4930144,
      size.height * 0.2923660,
      size.width * 0.4933529,
      size.height * 0.3068872,
      size.width * 0.4933529,
      size.height * 0.3227044);
  path3.cubicTo(
      size.width * 0.4933529,
      size.height * 0.3499312,
      size.width * 0.4923359,
      size.height * 0.3698976,
      size.width * 0.4902601,
      size.height * 0.3826032);
  path3.cubicTo(
      size.width * 0.4881843,
      size.height * 0.3953092,
      size.width * 0.4854725,
      size.height * 0.4015320,
      size.width * 0.4820405,
      size.height * 0.4015320);
  path3.lineTo(size.width * 0.4521699, size.height * 0.4015320);
  path3.lineTo(size.width * 0.4521699, size.height * 0.7448480);
  path3.cubicTo(
      size.width * 0.4521275,
      size.height * 0.7783000,
      size.width * 0.4538222,
      size.height * 0.8024120,
      size.width * 0.4571693,
      size.height * 0.8171920);
  path3.close();

  Paint paint3Fill = Paint()..style = PaintingStyle.fill;
  paint3Fill.color = color ?? Colors.white;
  canvas.drawPath(path3, paint3Fill);

  Path path4 = Path();
  path4.moveTo(size.width * 0.5663941, size.height * 0.2075780);
  path4.cubicTo(
      size.width * 0.5832150,
      size.height * 0.2075780,
      size.width * 0.5966458,
      size.height * 0.2296188,
      size.width * 0.6066451,
      size.height * 0.2737004);
  path4.cubicTo(
      size.width * 0.6166444,
      size.height * 0.3177816,
      size.width * 0.6216863,
      size.height * 0.3859780,
      size.width * 0.6216863,
      size.height * 0.4785480);
  path4.lineTo(size.width * 0.6216863, size.height * 0.8423480);
  path4.cubicTo(
      size.width * 0.6216863,
      size.height * 0.8675040,
      size.width * 0.6206693,
      size.height * 0.8874680,
      size.width * 0.6185935,
      size.height * 0.9022480);
  path4.cubicTo(
      size.width * 0.6165176,
      size.height * 0.9170280,
      size.width * 0.6139752,
      size.height * 0.9299960,
      size.width * 0.6108824,
      size.height * 0.9416640);
  path4.cubicTo(
      size.width * 0.6060941,
      size.height * 0.9595560,
      size.width * 0.5999935,
      size.height * 0.9738160,
      size.width * 0.5926209,
      size.height * 0.9841880);
  path4.cubicTo(
      size.width * 0.5852484,
      size.height * 0.9945600,
      size.width * 0.5768170,
      size.height * 1.000004,
      size.width * 0.5674111,
      size.height * 1.000004);
  path4.cubicTo(
      size.width * 0.5502510,
      size.height * 1.000004,
      size.width * 0.5367353,
      size.height * 0.9797800,
      size.width * 0.5268634,
      size.height * 0.9393280);
  path4.cubicTo(
      size.width * 0.5169908,
      size.height * 0.8988760,
      size.width * 0.5120765,
      size.height * 0.8382000,
      size.width * 0.5120765,
      size.height * 0.7573000);
  path4.cubicTo(
      size.width * 0.5120765,
      size.height * 0.6870280,
      size.width * 0.5157203,
      size.height * 0.6330920,
      size.width * 0.5230078,
      size.height * 0.5957520);
  path4.cubicTo(
      size.width * 0.5302954,
      size.height * 0.5584160,
      size.width * 0.5408876,
      size.height * 0.5355960,
      size.width * 0.5547850,
      size.height * 0.5272960);
  path4.lineTo(size.width * 0.5900366, size.height * 0.5052560);
  path4.lineTo(size.width * 0.5900366, size.height * 0.4769920);
  path4.cubicTo(
      size.width * 0.5900366,
      size.height * 0.4370600,
      size.width * 0.5876634,
      size.height * 0.4077600,
      size.width * 0.5829608,
      size.height * 0.3888304);
  path4.cubicTo(
      size.width * 0.5782575,
      size.height * 0.3699012,
      size.width * 0.5716052,
      size.height * 0.3605664,
      size.width * 0.5630046,
      size.height * 0.3605664);
  path4.cubicTo(
      size.width * 0.5563098,
      size.height * 0.3605664,
      size.width * 0.5497850,
      size.height * 0.3654932,
      size.width * 0.5434294,
      size.height * 0.3756060);
  path4.cubicTo(
      size.width * 0.5370745,
      size.height * 0.3857188,
      size.width * 0.5314392,
      size.height * 0.3979060,
      size.width * 0.5264392,
      size.height * 0.4126880);
  path4.cubicTo(
      size.width * 0.5245327,
      size.height * 0.4043880,
      size.width * 0.5229654,
      size.height * 0.3929792,
      size.width * 0.5216941,
      size.height * 0.3787176);
  path4.cubicTo(
      size.width * 0.5204229,
      size.height * 0.3644560,
      size.width * 0.5197451,
      size.height * 0.3491572,
      size.width * 0.5197451,
      size.height * 0.3323024);
  path4.cubicTo(
      size.width * 0.5197451,
      size.height * 0.3112988,
      size.width * 0.5205503,
      size.height * 0.2941852,
      size.width * 0.5222026,
      size.height * 0.2812200);
  path4.cubicTo(
      size.width * 0.5238124,
      size.height * 0.2679956,
      size.width * 0.5264392,
      size.height * 0.2563268,
      size.width * 0.5300412,
      size.height * 0.2456956);
  path4.cubicTo(
      size.width * 0.5349980,
      size.height * 0.2329896,
      size.width * 0.5406758,
      size.height * 0.2236548,
      size.width * 0.5470314,
      size.height * 0.2174316);
  path4.cubicTo(
      size.width * 0.5534288,
      size.height * 0.2106896,
      size.width * 0.5598693,
      size.height * 0.2075780,
      size.width * 0.5663941,
      size.height * 0.2075780);
  path4.close();
  path4.moveTo(size.width * 0.5674111, size.height * 0.8485720);
  path4.cubicTo(
      size.width * 0.5723680,
      size.height * 0.8485720,
      size.width * 0.5769438,
      size.height * 0.8457200,
      size.width * 0.5810542,
      size.height * 0.8400160);
  path4.cubicTo(
      size.width * 0.5851641,
      size.height * 0.8343120,
      size.width * 0.5881719,
      size.height * 0.8270520,
      size.width * 0.5900784,
      size.height * 0.8187520);
  path4.lineTo(size.width * 0.5900784, size.height * 0.6439840);
  path4.lineTo(size.width * 0.5651229, size.height * 0.6582440);
  path4.cubicTo(
      size.width * 0.5582588,
      size.height * 0.6623960,
      size.width * 0.5530477,
      size.height * 0.6717280,
      size.width * 0.5494039,
      size.height * 0.6857320);
  path4.cubicTo(
      size.width * 0.5458026,
      size.height * 0.6999920,
      size.width * 0.5439804,
      size.height * 0.7222920,
      size.width * 0.5439804,
      size.height * 0.7526320);
  path4.cubicTo(
      size.width * 0.5439804,
      size.height * 0.7829680,
      size.width * 0.5458026,
      size.height * 0.8068240,
      size.width * 0.5495307,
      size.height * 0.8234200);
  path4.cubicTo(
      size.width * 0.5532170,
      size.height * 0.8402760,
      size.width * 0.5591915,
      size.height * 0.8485720,
      size.width * 0.5674111,
      size.height * 0.8485720);
  path4.close();

  Paint paint4Fill = Paint()..style = PaintingStyle.fill;
  paint4Fill.color = color ?? Colors.white;
  canvas.drawPath(path4, paint4Fill);

  Path path5 = Path();
  path5.moveTo(size.width * 0.7166340, size.height * 0.3667648);
  path5.cubicTo(
      size.width * 0.7115098,
      size.height * 0.3667648,
      size.width * 0.7067190,
      size.height * 0.3719508,
      size.width * 0.7023595,
      size.height * 0.3825820);
  path5.cubicTo(
      size.width * 0.6979935,
      size.height * 0.3932136,
      size.width * 0.6942222,
      size.height * 0.4082520,
      size.width * 0.6910458,
      size.height * 0.4282200);
  path5.cubicTo(
      size.width * 0.6878693,
      size.height * 0.4481840,
      size.width * 0.6853268,
      size.height * 0.4728200,
      size.width * 0.6834641,
      size.height * 0.5021200);
  path5.cubicTo(
      size.width * 0.6815556,
      size.height * 0.5314200,
      size.width * 0.6806209,
      size.height * 0.5656480,
      size.width * 0.6806209,
      size.height * 0.6045440);
  path5.cubicTo(
      size.width * 0.6806209,
      size.height * 0.6823360,
      size.width * 0.6839673,
      size.height * 0.7406800,
      size.width * 0.6906667,
      size.height * 0.7800920);
  path5.cubicTo(
      size.width * 0.6973595,
      size.height * 0.8195080,
      size.width * 0.7060000,
      size.height * 0.8392120,
      size.width * 0.7166340,
      size.height * 0.8392120);
  path5.cubicTo(
      size.width * 0.7226536,
      size.height * 0.8392120,
      size.width * 0.7278235,
      size.height * 0.8342880,
      size.width * 0.7321830,
      size.height * 0.8241720);
  path5.cubicTo(
      size.width * 0.7365490,
      size.height * 0.8143200,
      size.width * 0.7404510,
      size.height * 0.8034280,
      size.width * 0.7438824,
      size.height * 0.7917600);
  path5.cubicTo(
      size.width * 0.7462941,
      size.height * 0.8023920,
      size.width * 0.7482026,
      size.height * 0.8143200,
      size.width * 0.7496863,
      size.height * 0.8280640);
  path5.cubicTo(
      size.width * 0.7511242,
      size.height * 0.8418080,
      size.width * 0.7518889,
      size.height * 0.8573640,
      size.width * 0.7518889,
      size.height * 0.8752560);
  path5.cubicTo(
      size.width * 0.7518889,
      size.height * 0.9110400,
      size.width * 0.7484575,
      size.height * 0.9403400,
      size.width * 0.7415948,
      size.height * 0.9634200);
  path5.cubicTo(
      size.width * 0.7347255,
      size.height * 0.9864960,
      size.width * 0.7254510,
      size.height * 0.9981640,
      size.width * 0.7137974,
      size.height * 0.9981640);
  path5.cubicTo(
      size.width * 0.7040131,
      size.height * 0.9981640,
      size.width * 0.6950719,
      size.height * 0.9901280,
      size.width * 0.6868954,
      size.height * 0.9737920);
  path5.cubicTo(
      size.width * 0.6787582,
      size.height * 0.9574560,
      size.width * 0.6717647,
      size.height * 0.9328200,
      size.width * 0.6659216,
      size.height * 0.8998880);
  path5.cubicTo(
      size.width * 0.6600719,
      size.height * 0.8667000,
      size.width * 0.6555817,
      size.height * 0.8257280,
      size.width * 0.6524039,
      size.height * 0.7762040);
  path5.cubicTo(
      size.width * 0.6492261,
      size.height * 0.7269360,
      size.width * 0.6476588,
      size.height * 0.6696280,
      size.width * 0.6476588,
      size.height * 0.6045440);
  path5.cubicTo(
      size.width * 0.6476588,
      size.height * 0.5384240,
      size.width * 0.6493536,
      size.height * 0.4803400,
      size.width * 0.6527856,
      size.height * 0.4305520);
  path5.cubicTo(
      size.width * 0.6562157,
      size.height * 0.3807668,
      size.width * 0.6608758,
      size.height * 0.3392788,
      size.width * 0.6668105,
      size.height * 0.3060880);
  path5.cubicTo(
      size.width * 0.6727386,
      size.height * 0.2728972,
      size.width * 0.6796471,
      size.height * 0.2482636,
      size.width * 0.6875294,
      size.height * 0.2321868);
  path5.cubicTo(
      size.width * 0.6954118,
      size.height * 0.2158508,
      size.width * 0.7038431,
      size.height * 0.2078124,
      size.width * 0.7127386,
      size.height * 0.2078124);
  path5.cubicTo(
      size.width * 0.7242222,
      size.height * 0.2078124,
      size.width * 0.7334118,
      size.height * 0.2202592,
      size.width * 0.7402810,
      size.height * 0.2448928);
  path5.cubicTo(
      size.width * 0.7471438,
      size.height * 0.2695264,
      size.width * 0.7505752,
      size.height * 0.2998648,
      size.width * 0.7505752,
      size.height * 0.3353892);
  path5.cubicTo(
      size.width * 0.7505752,
      size.height * 0.3522436,
      size.width * 0.7498562,
      size.height * 0.3675428,
      size.width * 0.7483725,
      size.height * 0.3810264);
  path5.cubicTo(
      size.width * 0.7469281,
      size.height * 0.3947696,
      size.width * 0.7452353,
      size.height * 0.4056600,
      size.width * 0.7433725,
      size.height * 0.4142160);
  path5.cubicTo(
      size.width * 0.7399412,
      size.height * 0.4028080,
      size.width * 0.7361242,
      size.height * 0.3919172,
      size.width * 0.7319346,
      size.height * 0.3820636);
  path5.cubicTo(
      size.width * 0.7277778,
      size.height * 0.3716916,
      size.width * 0.7226536,
      size.height * 0.3667648,
      size.width * 0.7166340,
      size.height * 0.3667648);
  path5.close();

  Paint paint5Fill = Paint()..style = PaintingStyle.fill;
  paint5Fill.color = color ?? Colors.white;
  canvas.drawPath(path5, paint5Fill);

  Path path6 = Path();
  path6.moveTo(size.width * 0.8158693, size.height * 0.8171920);
  path6.cubicTo(
      size.width * 0.8192157,
      size.height * 0.8319760,
      size.width * 0.8238758,
      size.height * 0.8392360,
      size.width * 0.8298954,
      size.height * 0.8392360);
  path6.cubicTo(
      size.width * 0.8328170,
      size.height * 0.8392360,
      size.width * 0.8357843,
      size.height * 0.8371600,
      size.width * 0.8387908,
      size.height * 0.8330120);
  path6.cubicTo(
      size.width * 0.8417974,
      size.height * 0.8288640,
      size.width * 0.8445098,
      size.height * 0.8236760,
      size.width * 0.8468824,
      size.height * 0.8171920);
  path6.cubicTo(
      size.width * 0.8482353,
      size.height * 0.8254920,
      size.width * 0.8494248,
      size.height * 0.8358640,
      size.width * 0.8503595,
      size.height * 0.8477920);
  path6.cubicTo(
      size.width * 0.8512876,
      size.height * 0.8599800,
      size.width * 0.8517582,
      size.height * 0.8737200,
      size.width * 0.8517582,
      size.height * 0.8895400);
  path6.cubicTo(
      size.width * 0.8517582,
      size.height * 0.9209160,
      size.width * 0.8494248,
      size.height * 0.9471040,
      size.width * 0.8448039,
      size.height * 0.9675880);
  path6.cubicTo(
      size.width * 0.8401895,
      size.height * 0.9880720,
      size.width * 0.8327320,
      size.height * 0.9981880,
      size.width * 0.8224379,
      size.height * 0.9981880);
  path6.cubicTo(
      size.width * 0.8088758,
      size.height * 0.9981880,
      size.width * 0.7982026,
      size.height * 0.9795160,
      size.width * 0.7904052,
      size.height * 0.9421760);
  path6.cubicTo(
      size.width * 0.7826078,
      size.height * 0.9048400,
      size.width * 0.7787124,
      size.height * 0.8431240,
      size.width * 0.7787124,
      size.height * 0.7570360);
  path6.lineTo(size.width * 0.7787124, size.height * 0.03436044);
  path6.cubicTo(
      size.width * 0.7800654,
      size.height * 0.03228604,
      size.width * 0.7820980,
      size.height * 0.02969312,
      size.width * 0.7847712,
      size.height * 0.02658152);
  path6.cubicTo(
      size.width * 0.7874379,
      size.height * 0.02346988,
      size.width * 0.7903203,
      size.height * 0.02191408,
      size.width * 0.7933725,
      size.height * 0.02191408);
  path6.cubicTo(
      size.width * 0.7993856,
      size.height * 0.02191408,
      size.width * 0.8037908,
      size.height * 0.02865576,
      size.width * 0.8066340,
      size.height * 0.04239880);
  path6.cubicTo(
      size.width * 0.8094706,
      size.height * 0.05614160,
      size.width * 0.8108693,
      size.height * 0.08025680,
      size.width * 0.8108693,
      size.height * 0.1147440);
  path6.lineTo(size.width * 0.8108693, size.height * 0.2454324);
  path6.lineTo(size.width * 0.8487059, size.height * 0.2454324);
  path6.cubicTo(
      size.width * 0.8495490,
      size.height * 0.2537300,
      size.width * 0.8503137,
      size.height * 0.2648800,
      size.width * 0.8510327,
      size.height * 0.2786232);
  path6.cubicTo(
      size.width * 0.8517124,
      size.height * 0.2923660,
      size.width * 0.8520523,
      size.height * 0.3068872,
      size.width * 0.8520523,
      size.height * 0.3227044);
  path6.cubicTo(
      size.width * 0.8520523,
      size.height * 0.3499312,
      size.width * 0.8510327,
      size.height * 0.3698976,
      size.width * 0.8489608,
      size.height * 0.3826032);
  path6.cubicTo(
      size.width * 0.8468824,
      size.height * 0.3953092,
      size.width * 0.8441699,
      size.height * 0.4015320,
      size.width * 0.8407386,
      size.height * 0.4015320);
  path6.lineTo(size.width * 0.8108693, size.height * 0.4015320);
  path6.lineTo(size.width * 0.8108693, size.height * 0.7448480);
  path6.cubicTo(
      size.width * 0.8108235,
      size.height * 0.7783000,
      size.width * 0.8125229,
      size.height * 0.8024120,
      size.width * 0.8158693,
      size.height * 0.8171920);
  path6.close();

  Paint paint6Fill = Paint()..style = PaintingStyle.fill;
  paint6Fill.color = color ?? Colors.white;
  canvas.drawPath(path6, paint6Fill);

  Path path7 = Path();
  path7.moveTo(size.width * 0.9950915, size.height * 0.6030120);
  path7.cubicTo(
      size.width * 0.9950915,
      size.height * 0.6639520,
      size.width * 0.9936078,
      size.height * 0.7186640,
      size.width * 0.9906013,
      size.height * 0.7676720);
  path7.cubicTo(
      size.width * 0.9875948,
      size.height * 0.8166800,
      size.width * 0.9833529,
      size.height * 0.8581680,
      size.width * 0.9778497,
      size.height * 0.8929160);
  path7.cubicTo(
      size.width * 0.9723399,
      size.height * 0.9276600,
      size.width * 0.9657320,
      size.height * 0.9541080,
      size.width * 0.9580196,
      size.height * 0.9725200);
  path7.cubicTo(
      size.width * 0.9503072,
      size.height * 0.9909320,
      size.width * 0.9416209,
      size.height * 1.000004,
      size.width * 0.9320458,
      size.height * 1.000004);
  path7.cubicTo(
      size.width * 0.9224314,
      size.height * 1.000004,
      size.width * 0.9137843,
      size.height * 0.9909320,
      size.width * 0.9060719,
      size.height * 0.9725200);
  path7.cubicTo(
      size.width * 0.8983595,
      size.height * 0.9541080,
      size.width * 0.8917516,
      size.height * 0.9279200,
      size.width * 0.8862418,
      size.height * 0.8936920);
  path7.cubicTo(
      size.width * 0.8807386,
      size.height * 0.8594640,
      size.width * 0.8764967,
      size.height * 0.8179760,
      size.width * 0.8734902,
      size.height * 0.7692280);
  path7.cubicTo(
      size.width * 0.8704837,
      size.height * 0.7204760,
      size.width * 0.8690000,
      size.height * 0.6649880,
      size.width * 0.8690000,
      size.height * 0.6030120);
  path7.cubicTo(
      size.width * 0.8690000,
      size.height * 0.5420760,
      size.width * 0.8704837,
      size.height * 0.4873640,
      size.width * 0.8734902,
      size.height * 0.4383560);
  path7.cubicTo(
      size.width * 0.8764967,
      size.height * 0.3896084,
      size.width * 0.8807778,
      size.height * 0.3481200,
      size.width * 0.8863725,
      size.height * 0.3138920);
  path7.cubicTo(
      size.width * 0.8919673,
      size.height * 0.2796640,
      size.width * 0.8986144,
      size.height * 0.2534744,
      size.width * 0.9063268,
      size.height * 0.2350640);
  path7.cubicTo(
      size.width * 0.9140392,
      size.height * 0.2166536,
      size.width * 0.9226405,
      size.height * 0.2075780,
      size.width * 0.9320458,
      size.height * 0.2075780);
  path7.cubicTo(
      size.width * 0.9414967,
      size.height * 0.2075780,
      size.width * 0.9500523,
      size.height * 0.2166536,
      size.width * 0.9577647,
      size.height * 0.2350640);
  path7.cubicTo(
      size.width * 0.9654771,
      size.height * 0.2534744,
      size.width * 0.9721307,
      size.height * 0.2799232,
      size.width * 0.9777190,
      size.height * 0.3146700);
  path7.cubicTo(
      size.width * 0.9833137,
      size.height * 0.3494164,
      size.width * 0.9875948,
      size.height * 0.3911640,
      size.width * 0.9906013,
      size.height * 0.4399120);
  path7.cubicTo(
      size.width * 0.9936078,
      size.height * 0.4886600,
      size.width * 0.9950915,
      size.height * 0.5431160,
      size.width * 0.9950915,
      size.height * 0.6030120);
  path7.close();
  path7.moveTo(size.width * 0.9320458, size.height * 0.3652340);
  path7.cubicTo(
      size.width * 0.9227647,
      size.height * 0.3652340,
      size.width * 0.9154771,
      size.height * 0.3859780,
      size.width * 0.9101830,
      size.height * 0.4274680);
  path7.cubicTo(
      size.width * 0.9048431,
      size.height * 0.4689560,
      size.width * 0.9022157,
      size.height * 0.5275560,
      size.width * 0.9022157,
      size.height * 0.6030120);
  path7.cubicTo(
      size.width * 0.9022157,
      size.height * 0.6797680,
      size.width * 0.9048431,
      size.height * 0.7383680,
      size.width * 0.9100588,
      size.height * 0.7793400);
  path7.cubicTo(
      size.width * 0.9152680,
      size.height * 0.8203080,
      size.width * 0.9225948,
      size.height * 0.8407960,
      size.width * 0.9320458,
      size.height * 0.8407960);
  path7.cubicTo(
      size.width * 0.9414967,
      size.height * 0.8407960,
      size.width * 0.9488235,
      size.height * 0.8200520,
      size.width * 0.9540392,
      size.height * 0.7785600);
  path7.cubicTo(
      size.width * 0.9592876,
      size.height * 0.7370720,
      size.width * 0.9618758,
      size.height * 0.6784720,
      size.width * 0.9618758,
      size.height * 0.6030120);
  path7.cubicTo(
      size.width * 0.9618758,
      size.height * 0.5272960,
      size.width * 0.9592026,
      size.height * 0.4689560,
      size.width * 0.9539085,
      size.height * 0.4274680);
  path7.cubicTo(
      size.width * 0.9486144,
      size.height * 0.3859780,
      size.width * 0.9413268,
      size.height * 0.3652340,
      size.width * 0.9320458,
      size.height * 0.3652340);
  path7.close();

  Paint paint7Fill = Paint()..style = PaintingStyle.fill;
  paint7Fill.color = color ?? Colors.white;
  canvas.drawPath(path7, paint7Fill);
}