aboutsummaryrefslogtreecommitdiffhomepage
path: root/gm/textblob.cpp
diff options
context:
space:
mode:
authorGravatar fmalita <fmalita@chromium.org>2014-08-22 09:01:19 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-08-22 09:01:20 -0700
commit37ecbaffd1f9f6841aa562aa31a824d109d52988 (patch)
treec4ecb2c9dbdfeb634b886f3d3b629df77d7d59d2 /gm/textblob.cpp
parent8367b8cb7a6b2f163ee41365323cb219b7049b15 (diff)
[SkTextBlob] Merge run font data at draw time.
R=bungeman@google.com, reed@google.com Author: fmalita@chromium.org Review URL: https://codereview.chromium.org/496773002
Diffstat (limited to 'gm/textblob.cpp')
-rw-r--r--gm/textblob.cpp39
1 files changed, 24 insertions, 15 deletions
diff --git a/gm/textblob.cpp b/gm/textblob.cpp
index e7a0a1d2ef..6837363898 100644
--- a/gm/textblob.cpp
+++ b/gm/textblob.cpp
@@ -31,21 +31,33 @@ const struct BlobCfg {
{ { 1024, kPoint_Pos, 1 }, { 0, kPoint_Pos, 0 }, { 0, kPoint_Pos, 0 } },
},
{
- { { 4, kDefault_Pos, 1}, { 4, kDefault_Pos, 1}, { 4, kDefault_Pos, 1} },
- { { 4, kScalar_Pos, 1}, { 4, kScalar_Pos, 1}, { 4, kScalar_Pos, 1} },
- { { 4, kPoint_Pos, 1}, { 4, kPoint_Pos, 1}, { 4, kPoint_Pos, 1} },
+ { { 4, kDefault_Pos, 1 }, { 4, kDefault_Pos, 1 }, { 4, kDefault_Pos, 1 } },
+ { { 4, kScalar_Pos, 1 }, { 4, kScalar_Pos, 1 }, { 4, kScalar_Pos, 1 } },
+ { { 4, kPoint_Pos, 1 }, { 4, kPoint_Pos, 1 }, { 4, kPoint_Pos, 1 } },
},
{
- { { 4, kDefault_Pos, 1}, { 4, kDefault_Pos, 1}, { 4, kScalar_Pos, 1} },
- { { 4, kScalar_Pos, 1}, { 4, kScalar_Pos, 1}, { 4, kPoint_Pos, 1} },
- { { 4, kPoint_Pos, 1}, { 4, kPoint_Pos, 1}, { 4, kDefault_Pos, 1} },
+ { { 4, kDefault_Pos, 1 }, { 4, kDefault_Pos, 1 }, { 4, kScalar_Pos, 1 } },
+ { { 4, kScalar_Pos, 1 }, { 4, kScalar_Pos, 1 }, { 4, kPoint_Pos, 1 } },
+ { { 4, kPoint_Pos, 1 }, { 4, kPoint_Pos, 1 }, { 4, kDefault_Pos, 1 } },
},
{
- { { 4, kDefault_Pos, 1}, { 4, kScalar_Pos, 1}, { 4, kPoint_Pos, 1} },
- { { 4, kScalar_Pos, 1}, { 4, kPoint_Pos, 1}, { 4, kDefault_Pos, 1} },
- { { 4, kPoint_Pos, 1}, { 4, kDefault_Pos, 1}, { 4, kScalar_Pos, 1} },
+ { { 4, kDefault_Pos, 1 }, { 4, kScalar_Pos, 1 }, { 4, kPoint_Pos, 1 } },
+ { { 4, kScalar_Pos, 1 }, { 4, kPoint_Pos, 1 }, { 4, kDefault_Pos, 1 } },
+ { { 4, kPoint_Pos, 1 }, { 4, kDefault_Pos, 1 }, { 4, kScalar_Pos, 1 } },
+ },
+
+ {
+ { { 4, kDefault_Pos, .75f }, { 4, kDefault_Pos, 1 }, { 4, kScalar_Pos, 1.25f } },
+ { { 4, kScalar_Pos, .75f }, { 4, kScalar_Pos, 1 }, { 4, kPoint_Pos, 1.25f } },
+ { { 4, kPoint_Pos, .75f }, { 4, kPoint_Pos, 1 }, { 4, kDefault_Pos, 1.25f } },
+ },
+
+ {
+ { { 4, kDefault_Pos, 1 }, { 4, kScalar_Pos, .75f }, { 4, kPoint_Pos, 1.25f } },
+ { { 4, kScalar_Pos, 1 }, { 4, kPoint_Pos, .75f }, { 4, kDefault_Pos, 1.25f } },
+ { { 4, kPoint_Pos, 1 }, { 4, kDefault_Pos, .75f }, { 4, kScalar_Pos, 1.25f } },
},
};
@@ -74,14 +86,9 @@ protected:
virtual void onDraw(SkCanvas* canvas) SK_OVERRIDE {
for (unsigned b = 0; b < SK_ARRAY_COUNT(blobConfigs); ++b) {
- SkAutoTUnref<const SkTextBlob> blob(makeBlob(b));
+ SkAutoTUnref<const SkTextBlob> blob(this->makeBlob(b));
SkPaint p;
- p.setTextEncoding(SkPaint::kGlyphID_TextEncoding);
- p.setTextSize(kFontSize);
- p.setAntiAlias(true);
- p.setSubpixelText(true);
-
SkPoint offset = SkPoint::Make(SkIntToScalar(10 + 300 * (b % 2)),
SkIntToScalar(20 + 150 * (b / 2)));
@@ -102,6 +109,8 @@ private:
SkPaint font;
font.setTextEncoding(SkPaint::kGlyphID_TextEncoding);
+ font.setAntiAlias(true);
+ font.setSubpixelText(true);
for (unsigned l = 0; l < SK_ARRAY_COUNT(blobConfigs[blobIndex]); ++l) {
unsigned currentGlyph = 0;