use drawSimpleText
Bug: skia:
Change-Id: I4aa6190e66478595a409f93a406fd42f19394302
Reviewed-on: https://skia-review.googlesource.com/c/180927
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
Auto-Submit: Mike Reed <reed@google.com>
diff --git a/samplecode/SampleAAGeometry.cpp b/samplecode/SampleAAGeometry.cpp
index 9e60891..397ba5f 100644
--- a/samplecode/SampleAAGeometry.cpp
+++ b/samplecode/SampleAAGeometry.cpp
@@ -564,6 +564,9 @@
SkPaint fLabel;
SkPaint fValue;
+ SkFont fLabelFont;
+ SkFont fValueFont;
+
ControlPaints() {
fOutline.setAntiAlias(true);
fOutline.setStyle(SkPaint::kStroke_Style);
@@ -572,9 +575,9 @@
fFill.setAntiAlias(true);
fFill.setColor(0x7fff0000);
fLabel.setAntiAlias(true);
- fLabel.setTextSize(13.0f);
+ fLabelFont.setSize(13.0f);
fValue.setAntiAlias(true);
- fValue.setTextSize(11.0f);
+ fValueFont.setSize(11.0f);
}
};
@@ -610,9 +613,10 @@
canvas->drawLine(fBounds.fLeft - 5, fYLo, fBounds.fRight + 5, fYLo, paints.fIndicator);
SkString label;
label.printf("%0.3g", fValLo);
- canvas->drawString(label, fBounds.fLeft + 5, fYLo - 5, paints.fValue);
- canvas->drawString(fName, fBounds.fLeft, fBounds.bottom() + 11,
- paints.fLabel);
+ canvas->drawSimpleText(label.c_str(), label.size(), kUTF8_SkTextEncoding,
+ fBounds.fLeft + 5, fYLo - 5, paints.fValueFont, paints.fValue);
+ canvas->drawSimpleText(fName.c_str(), fName.size(), kUTF8_SkTextEncoding,
+ fBounds.fLeft, fBounds.bottom() + 11, paints.fLabelFont, paints.fLabel);
}
};
diff --git a/samplecode/SampleBlur.cpp b/samplecode/SampleBlur.cpp
deleted file mode 100644
index 6b5481e..0000000
--- a/samplecode/SampleBlur.cpp
+++ /dev/null
@@ -1,89 +0,0 @@
-/*
- * Copyright 2011 Google Inc.
- *
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "Sample.h"
-#include "SkBitmap.h"
-#include "SkBlurMask.h"
-#include "SkCanvas.h"
-#include "SkColorPriv.h"
-#include "SkGradientShader.h"
-#include "SkMaskFilter.h"
-#include "SkUTF.h"
-
-class BlurView : public Sample {
- SkBitmap fBM;
-public:
- BlurView() {}
-
-protected:
- virtual bool onQuery(Sample::Event* evt) {
- if (Sample::TitleQ(*evt)) {
- Sample::TitleR(evt, "Blur");
- return true;
- }
- return this->INHERITED::onQuery(evt);
- }
-
- void drawBG(SkCanvas* canvas) {
- canvas->drawColor(0xFFDDDDDD);
- }
-
- virtual void onDrawContent(SkCanvas* canvas) {
- drawBG(canvas);
-
- SkBlurStyle NONE = SkBlurStyle(-999);
- static const struct {
- SkBlurStyle fStyle;
- int fCx, fCy;
- } gRecs[] = {
- { NONE, 0, 0 },
- { kInner_SkBlurStyle, -1, 0 },
- { kNormal_SkBlurStyle, 0, 1 },
- { kSolid_SkBlurStyle, 0, -1 },
- { kOuter_SkBlurStyle, 1, 0 },
- };
-
- SkPaint paint;
- paint.setAntiAlias(true);
- paint.setTextSize(25);
- canvas->translate(-40, 0);
-
- paint.setColor(SK_ColorBLUE);
- for (size_t i = 0; i < SK_ARRAY_COUNT(gRecs); i++) {
- if (gRecs[i].fStyle != NONE) {
- paint.setMaskFilter(SkMaskFilter::MakeBlur(gRecs[i].fStyle,
- SkBlurMask::ConvertRadiusToSigma(SkIntToScalar(20))));
- } else {
- paint.setMaskFilter(nullptr);
- }
- canvas->drawCircle(200 + gRecs[i].fCx*100.f,
- 200 + gRecs[i].fCy*100.f, 50, paint);
- }
- // draw text
- {
- paint.setMaskFilter(SkMaskFilter::MakeBlur(kNormal_SkBlurStyle,
- SkBlurMask::ConvertRadiusToSigma(4)));
- SkScalar x = SkIntToScalar(70);
- SkScalar y = SkIntToScalar(400);
- paint.setColor(SK_ColorBLACK);
- canvas->drawString("Hamburgefons Style", x, y, paint);
- canvas->drawString("Hamburgefons Style", x, y + SkIntToScalar(50), paint);
- paint.setMaskFilter(nullptr);
- paint.setColor(SK_ColorWHITE);
- x -= SkIntToScalar(2);
- y -= SkIntToScalar(2);
- canvas->drawString("Hamburgefons Style", x, y, paint);
- }
- }
-
-private:
- typedef Sample INHERITED;
-};
-
-//////////////////////////////////////////////////////////////////////////////
-
-DEF_SAMPLE( return new BlurView(); )
diff --git a/samplecode/SampleComplexClip.cpp b/samplecode/SampleComplexClip.cpp
index 897b045..f4da38c 100644
--- a/samplecode/SampleComplexClip.cpp
+++ b/samplecode/SampleComplexClip.cpp
@@ -129,7 +129,7 @@
SkScalar txtX = SkIntToScalar(55);
paint.setColor(colorA);
const char* aTxt = invA ? "InverseA " : "A ";
- canvas->drawString(aTxt, txtX, SkIntToScalar(220), paint);
+ canvas->drawSimpleText(aTxt, strlen(aTxt), kUTF8_SkTextEncoding, txtX, SkIntToScalar(220), font, paint);
txtX += font.measureText(aTxt, strlen(aTxt), kUTF8_SkTextEncoding);
paint.setColor(SK_ColorBLACK);
canvas->drawSimpleText(gOps[op].fName, strlen(gOps[op].fName), kUTF8_SkTextEncoding,
diff --git a/samplecode/SampleCusp.cpp b/samplecode/SampleCusp.cpp
index 7eb85f1..32ba90d 100644
--- a/samplecode/SampleCusp.cpp
+++ b/samplecode/SampleCusp.cpp
@@ -4,9 +4,11 @@
* Use of this source code is governed by a BSD-style license that can be
* found in the LICENSE file.
*/
+
#include "Sample.h"
#include "SkAnimTimer.h"
#include "SkCanvas.h"
+#include "SkFont.h"
#include "SkGeometry.h"
#include "SkPath.h"
#include <string>
@@ -165,7 +167,7 @@
canvas->drawPath(path, p);
// draw time to make it easier to guess when the bad cubic was drawn
std::string timeStr = std::to_string((float) (curTime - start) / 1000.f);
- canvas->drawString(timeStr.c_str(), 20, 20, SkPaint());
+ canvas->drawSimpleText(timeStr.c_str(), timeStr.size(), kUTF8_SkTextEncoding, 20, 20, SkFont(), SkPaint());
SkDebugf("");
}
diff --git a/samplecode/SampleDegenerateTwoPtRadials.cpp b/samplecode/SampleDegenerateTwoPtRadials.cpp
index b9044c1..32c5fec 100644
--- a/samplecode/SampleDegenerateTwoPtRadials.cpp
+++ b/samplecode/SampleDegenerateTwoPtRadials.cpp
@@ -8,6 +8,7 @@
#include "Sample.h"
#include "SkAnimTimer.h"
#include "SkCanvas.h"
+#include "SkFont.h"
#include "SkGradientShader.h"
#include "SkString.h"
@@ -68,10 +69,8 @@
draw_gradient2(canvas, SkRect::MakeXYWH(l, t, w, h), delta);
SkString txt;
txt.appendf("gap at \"tangent\" pt = %f", SkScalarToFloat(delta));
- SkPaint paint;
- paint.setAntiAlias(true);
- paint.setColor(SK_ColorBLACK);
- canvas->drawString(txt, l + w/2 + w*DELTA_SCALE*delta, t + h + SK_Scalar1 * 10, paint);
+ canvas->drawSimpleText(txt.c_str(), txt.size(), kUTF8_SkTextEncoding,
+ l + w/2 + w*DELTA_SCALE*delta, t + h + SK_Scalar1 * 10, SkFont(), SkPaint());
}
bool onAnimate(const SkAnimTimer& timer) override {
diff --git a/samplecode/SampleRectanizer.cpp b/samplecode/SampleRectanizer.cpp
index 317d24c..10fc2e8 100644
--- a/samplecode/SampleRectanizer.cpp
+++ b/samplecode/SampleRectanizer.cpp
@@ -7,6 +7,7 @@
#include "Sample.h"
#include "SkCanvas.h"
+#include "SkFont.h"
#include "SkRandom.h"
#include "SkPaint.h"
#include "SkUTF.h"
@@ -88,8 +89,8 @@
}
}
- SkPaint blackBigFont;
- blackBigFont.setTextSize(20);
+ SkFont blackBigFont;
+ blackBigFont.setSize(20);
SkPaint blackStroke;
blackStroke.setStyle(SkPaint::kStroke_Style);
SkPaint redFill;
@@ -121,13 +122,16 @@
100.0f * totArea / ((float)kWidth*kHeight),
fCurRandRect,
kNumRandRects);
- canvas->drawString(str, 50, kHeight + 50, blackBigFont);
+ canvas->drawSimpleText(str.c_str(), str.size(), kUTF8_SkTextEncoding,
+ 50, kHeight + 50, blackBigFont, SkPaint());
str.printf("Press \'j\' to toggle rectanizer");
- canvas->drawString(str, 50, kHeight + 100, blackBigFont);
+ canvas->drawSimpleText(str.c_str(), str.size(), kUTF8_SkTextEncoding,
+ 50, kHeight + 100, blackBigFont, SkPaint());
str.printf("Press \'h\' to toggle rects");
- canvas->drawString(str, 50, kHeight + 150, blackBigFont);
+ canvas->drawSimpleText(str.c_str(), str.size(), kUTF8_SkTextEncoding,
+ 50, kHeight + 150, blackBigFont, SkPaint());
}
private:
diff --git a/samplecode/SampleRegion.cpp b/samplecode/SampleRegion.cpp
index 409222e..2ae5f87 100644
--- a/samplecode/SampleRegion.cpp
+++ b/samplecode/SampleRegion.cpp
@@ -185,10 +185,10 @@
static void drawstr(SkCanvas* canvas, const char text[], const SkPoint& loc,
bool hilite) {
SkPaint paint;
- paint.setAntiAlias(true);
- paint.setTextSize(SkIntToScalar(20));
paint.setColor(hilite ? SK_ColorRED : 0x40FF0000);
- canvas->drawString(text, loc.fX, loc.fY, paint);
+ SkFont font;
+ font.setSize(SkIntToScalar(20));
+ canvas->drawSimpleText(text, strlen(text), kUTF8_SkTextEncoding, loc.fX, loc.fY, font, paint);
}
void drawPredicates(SkCanvas* canvas, const SkPoint pts[]) {
@@ -303,9 +303,8 @@
{ SK_ColorBLUE, "XOR", SkRegion::kXOR_Op }
};
- SkPaint textPaint;
- textPaint.setAntiAlias(true);
- textPaint.setTextSize(SK_Scalar1*24);
+ SkFont font;
+ font.setSize(SK_Scalar1*24);
this->drawOrig(canvas, false);
canvas->save();
@@ -316,7 +315,8 @@
canvas->translate(0, SkIntToScalar(200));
for (size_t op = 0; op < SK_ARRAY_COUNT(gOps); op++) {
- canvas->drawString(gOps[op].fName, SkIntToScalar(75), SkIntToScalar(50), textPaint);
+ canvas->drawSimpleText(gOps[op].fName, strlen(gOps[op].fName), kUTF8_SkTextEncoding,
+ SkIntToScalar(75), SkIntToScalar(50), font, SkPaint());
this->drawRgnOped(canvas, gOps[op].fOp, gOps[op].fColor);
diff --git a/samplecode/SampleShip.cpp b/samplecode/SampleShip.cpp
index a4871fa..feca632 100644
--- a/samplecode/SampleShip.cpp
+++ b/samplecode/SampleShip.cpp
@@ -9,6 +9,7 @@
#include "Resources.h"
#include "SkAnimTimer.h"
#include "SkCanvas.h"
+#include "SkFont.h"
#include "SkRSXform.h"
#include "SkSurface.h"
#include "Timer.h"
@@ -106,7 +107,9 @@
SkPaint paint;
paint.setFilterQuality(kLow_SkFilterQuality);
paint.setColor(SK_ColorWHITE);
- paint.setTextSize(15.0f);
+
+ SkFont font;
+ font.setSize(15.0f);
fTimer.end();
@@ -148,7 +151,7 @@
paint.setColor(SK_ColorBLACK);
canvas->drawRect(SkRect::MakeXYWH(0, 0, 200, 24), paint);
paint.setColor(SK_ColorWHITE);
- canvas->drawString(outString, 5, 15, paint);
+ canvas->drawSimpleText(outString.c_str(), outString.size(), kUTF8_SkTextEncoding, 5, 15, font, paint);
}
#if 0