diff options
author | Mike Klein <mtklein@google.com> | 2014-08-29 10:03:59 -0400 |
---|---|---|
committer | Mike Klein <mtklein@google.com> | 2014-08-29 10:03:59 -0400 |
commit | 6a25bd017278f2cdaeaf6121548c13ab04702799 (patch) | |
tree | 0662607846da45df6da9592b6575736e01e5ab18 /gm/fontcache.cpp | |
parent | 228b285ba14a6e9b6d1cc95ea1583caab30168a1 (diff) |
Revert Jim's CL.
BUG=skia:
Review URL: https://codereview.chromium.org/517123005
Diffstat (limited to 'gm/fontcache.cpp')
-rw-r--r-- | gm/fontcache.cpp | 32 |
1 files changed, 24 insertions, 8 deletions
diff --git a/gm/fontcache.cpp b/gm/fontcache.cpp index 1260eeb76f..74ec18a450 100644 --- a/gm/fontcache.cpp +++ b/gm/fontcache.cpp @@ -13,15 +13,15 @@ // GM to stress the GPU font cache const char* gFamilyNames[] = { - "sans-serif", "serif" + "sans-serif", "serif", "monospace" }; const SkTypeface::Style gStyles[] = { - SkTypeface::kNormal, SkTypeface::kItalic, SkTypeface::kBold + SkTypeface::kNormal, SkTypeface::kItalic }; const SkScalar gTextSizes[] = { - 192, 194, 196, 198, 200, 202, 204, 206 + 12, 14, 16, 18, 20, 22, 24, 26, 28, 30 }; #define TYPEFACE_COUNT (SK_ARRAY_COUNT(gFamilyNames)*SK_ARRAY_COUNT(gStyles)) @@ -52,7 +52,7 @@ protected: } virtual SkISize onISize() SK_OVERRIDE { - return SkISize::Make(1280, 640); + return SkISize::Make(640, 320); } virtual void onOnceBeforeDraw() SK_OVERRIDE { @@ -72,19 +72,35 @@ protected: paint.setLCDRenderText(true); paint.setSubpixelText(true); - SkString text("H"); + SkString text("Ham"); - // draw enough to overflow the cache + // draw some initial text to partially fill the GPU cache + for (size_t i = 0; i < 2; ++i) { + paint.setTypeface(fTypefaces[i]); + SkScalar x = 20; + + for (size_t j = 0; j < SK_ARRAY_COUNT(gTextSizes); ++j) { + paint.setTextSize(gTextSizes[j]); + x = draw_string(canvas, text, x, y, paint) + 19; + } + y += 32; + } + + // force a flush + canvas->flush(); + + // draw again, and more to overflow the cache for (size_t i = 0; i < TYPEFACE_COUNT; ++i) { paint.setTypeface(fTypefaces[i]); SkScalar x = 20; for (size_t j = 0; j < SK_ARRAY_COUNT(gTextSizes); ++j) { paint.setTextSize(gTextSizes[j]); - x = draw_string(canvas, text, x, y, paint) + 10; + x = draw_string(canvas, text, x, y, paint) + 19; } - y += 128; + y += 32; } + } virtual uint32_t onGetFlags() const SK_OVERRIDE { |