Canvas_drawText.cpp 868 B

1234567891011121314151617181920212223242526
  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=55f5e59350622c5e2834d1c85789f732
  5. REG_FIDDLE(Canvas_drawText, 256, 200, false, 0) {
  6. void draw(SkCanvas* canvas) {
  7. SkPaint paint;
  8. SkFont font;
  9. float textSizes[] = { 12, 18, 24, 36 };
  10. for (auto size: textSizes ) {
  11. font.setSize(size);
  12. canvas->drawString("Aa", 10, 20, font, paint);
  13. canvas->translate(0, size * 2);
  14. }
  15. font = SkFont();
  16. float yPos = 20;
  17. for (auto size: textSizes ) {
  18. float scale = size / 12.f;
  19. canvas->resetMatrix();
  20. canvas->translate(100, 0);
  21. canvas->scale(scale, scale);
  22. canvas->drawString("Aa", 10 / scale, yPos / scale, font, paint);
  23. yPos += size * 2;
  24. }
  25. }
  26. } // END FIDDLE