Canvas_drawRRect.cpp 1.1 KB

123456789101112131415161718192021222324
  1. // Copyright 2019 Google LLC.
  2. // Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
  3. #include "tools/fiddle/examples.h"
  4. // HASH=90fed1bb11efb43aada94113338c63d8
  5. REG_FIDDLE(Canvas_drawRRect, 256, 256, false, 0) {
  6. void draw(SkCanvas* canvas) {
  7. SkPaint paint;
  8. paint.setAntiAlias(true);
  9. SkRect outer = {30, 40, 210, 220};
  10. SkRect radii = {30, 50, 70, 90 };
  11. SkRRect rRect;
  12. rRect.setNinePatch(outer, radii.fLeft, radii.fTop, radii.fRight, radii.fBottom);
  13. canvas->drawRRect(rRect, paint);
  14. paint.setColor(SK_ColorWHITE);
  15. canvas->drawLine(outer.fLeft + radii.fLeft, outer.fTop,
  16. outer.fLeft + radii.fLeft, outer.fBottom, paint);
  17. canvas->drawLine(outer.fRight - radii.fRight, outer.fTop,
  18. outer.fRight - radii.fRight, outer.fBottom, paint);
  19. canvas->drawLine(outer.fLeft, outer.fTop + radii.fTop,
  20. outer.fRight, outer.fTop + radii.fTop, paint);
  21. canvas->drawLine(outer.fLeft, outer.fBottom - radii.fBottom,
  22. outer.fRight, outer.fBottom - radii.fBottom, paint);
  23. }
  24. } // END FIDDLE