aboutsummaryrefslogtreecommitdiffhomepage
path: root/samplecode
diff options
context:
space:
mode:
authorGravatar Yuqian Li <liyuqian@google.com>2018-02-09 03:38:20 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-02-09 03:38:31 +0000
commitefcacfa8a86b258c51380588fc5170cb1fb9f6e5 (patch)
tree044b96bcb4ba18ade0accd8e0b0d67e5be6d06a0 /samplecode
parent18c46b553a3943337403b510be0a7dd75aacf35c (diff)
Revert "use SkShaper instead of SkTextBox"
This reverts commit 59dad9111792ca1ceebfb444497f81d9eb357b7d. Reason for revert: Possibly breaks Build-Win-Clang-arm64-Release-Android Original change's description: > use SkShaper instead of SkTextBox > > Change-Id: I63fae79007938cb89c122799b8984a88e91ac1e7 > Reviewed-on: https://skia-review.googlesource.com/102863 > Commit-Queue: Hal Canary <halcanary@google.com> > Reviewed-by: Hal Canary <halcanary@google.com> > Reviewed-by: Ben Wagner <bungeman@google.com> TBR=halcanary@google.com,bungeman@google.com,fmalita@chromium.org,reed@google.com Change-Id: Id865d9e9cce03b4166f818c2bad659bdecc4f447 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/105941 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
Diffstat (limited to 'samplecode')
-rw-r--r--samplecode/SampleTextBox.cpp37
1 files changed, 17 insertions, 20 deletions
diff --git a/samplecode/SampleTextBox.cpp b/samplecode/SampleTextBox.cpp
index 3c1e9eb878..c5fe4cfcd2 100644
--- a/samplecode/SampleTextBox.cpp
+++ b/samplecode/SampleTextBox.cpp
@@ -5,26 +5,24 @@
* found in the LICENSE file.
*/
#include "SampleCode.h"
-
+#include "SkView.h"
#include "SkBlurMaskFilter.h"
#include "SkCanvas.h"
-#include "SkColorFilter.h"
-#include "SkColorPriv.h"
#include "SkColorShader.h"
#include "SkGradientShader.h"
#include "SkGraphics.h"
-#include "SkOSFile.h"
#include "SkPath.h"
#include "SkRandom.h"
#include "SkRegion.h"
#include "SkShader.h"
-#include "SkShaper.h"
-#include "SkStream.h"
-#include "SkTextBlob.h"
+#include "SkUtils.h"
+#include "SkColorPriv.h"
+#include "SkColorFilter.h"
#include "SkTime.h"
#include "SkTypeface.h"
-#include "SkUtils.h"
-#include "SkView.h"
+#include "SkTextBox.h"
+#include "SkOSFile.h"
+#include "SkStream.h"
extern void skia_set_text_gamma(float blackGamma, float whiteGamma);
@@ -59,7 +57,7 @@ public:
protected:
// overrides from SkEventSink
- bool onQuery(SkEvent* evt) override {
+ virtual bool onQuery(SkEvent* evt) {
if (SampleCode::TitleQ(*evt)) {
SampleCode::TitleR(evt, "TextBox");
return true;
@@ -72,28 +70,27 @@ protected:
canvas->clipRect(SkRect::MakeWH(w, h));
canvas->drawColor(bg);
-
- SkShaper shaper(nullptr);
-
SkScalar margin = 20;
+ SkTextBox tbox;
+ tbox.setMode(SkTextBox::kLineBreak_Mode);
+ tbox.setBox(margin, margin,
+ w - margin, h - margin);
+ tbox.setSpacing(SkIntToScalar(3)/3, 0);
SkPaint paint;
paint.setAntiAlias(true);
paint.setLCDRenderText(true);
paint.setColor(fg);
+ tbox.setText(gText, strlen(gText), paint);
for (int i = 9; i < 24; i += 2) {
- SkTextBlobBuilder builder;
paint.setTextSize(SkIntToScalar(i));
- SkPoint end = shaper.shape(&builder, paint, gText, strlen(gText), true,
- { margin, margin }, w - margin);
- canvas->drawTextBlob(builder.make(), 0, 0, paint);
-
- canvas->translate(0, end.y());
+ tbox.draw(canvas);
+ canvas->translate(0, tbox.getTextHeight() + paint.getFontSpacing());
}
}
- void onDrawContent(SkCanvas* canvas) override {
+ virtual void onDrawContent(SkCanvas* canvas) {
SkScalar width = this->width() / 3;
drawTest(canvas, width, this->height(), SK_ColorBLACK, SK_ColorWHITE);
canvas->translate(width, 0);