diff options
author | Hal Canary <halcanary@google.com> | 2018-06-06 13:29:51 +0000 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-06-06 13:29:57 +0000 |
commit | 74b390d6b136a60f1df15ac5ecd19bd8ad5a394b (patch) | |
tree | afba5f9d8d8d802e9b6873c5f4c7948a94f76762 /src/core/SkDevice.cpp | |
parent | 102c8cf26e2886ba783a2b54827e1f5d1cf0a774 (diff) |
Revert "Have draw(Text|PosText|PosTextH) use a single entry on the device"
This reverts commit 4225b3220ef4bf50f0d9403f812ea94d50c4ee59.
Reason for revert: made valgrind unhappy.
Original change's description:
> Have draw(Text|PosText|PosTextH) use a single entry on the device
>
> Handle the positioning of drawText at the canvas layer. Simplify
> the code by removing similar implementations.
>
> Change-Id: I8b711783435072f560e29fca1dd934fa2e345ed2
> Reviewed-on: https://skia-review.googlesource.com/127131
> Reviewed-by: Ben Wagner <bungeman@google.com>
> Commit-Queue: Herb Derby <herb@google.com>
TBR=jvanverth@google.com,bungeman@google.com,herb@google.com
Change-Id: I65c9d30ae6ecb1f87e8660e56d8f8ce5daab7551
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/132403
Reviewed-by: Hal Canary <halcanary@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
Diffstat (limited to 'src/core/SkDevice.cpp')
-rw-r--r-- | src/core/SkDevice.cpp | 30 |
1 files changed, 4 insertions, 26 deletions
diff --git a/src/core/SkDevice.cpp b/src/core/SkDevice.cpp index 1bad6dba6e..35cfc9ab71 100644 --- a/src/core/SkDevice.cpp +++ b/src/core/SkDevice.cpp @@ -9,14 +9,12 @@ #include "SkColorFilter.h" #include "SkDraw.h" #include "SkDrawFilter.h" -#include "SkGlyphRun.h" #include "SkImageFilter.h" #include "SkImageFilterCache.h" #include "SkImagePriv.h" #include "SkImage_Base.h" #include "SkLatticeIter.h" #include "SkLocalMatrixShader.h" -#include "SkMakeUnique.h" #include "SkMatrixPriv.h" #include "SkPatchUtils.h" #include "SkPathMeasure.h" @@ -159,16 +157,9 @@ void SkBaseDevice::drawTextBlob(const SkTextBlob* blob, SkScalar x, SkScalar y, } switch (it.positioning()) { - case SkTextBlob::kDefault_Positioning: { - auto origin = SkPoint::Make(x + offset.x(), y + offset.y()); - auto glyphRun = - SkGlyphRun::MakeFromDrawText(runPaint, - (const char*) it.glyphs(), textLen, origin); - this->drawPosText( - it.glyphs(), textLen, glyphRun.getPositions(), 2, - SkPoint::Make(0, 0), runPaint); - } - break; + case SkTextBlob::kDefault_Positioning: + this->drawText(it.glyphs(), textLen, x + offset.x(), y + offset.y(), runPaint); + break; case SkTextBlob::kHorizontal_Positioning: this->drawPosText(it.glyphs(), textLen, it.pos(), 1, SkPoint::Make(x, y + offset.y()), runPaint); @@ -252,17 +243,6 @@ void SkBaseDevice::drawImageLattice(const SkImage* image, } } -void SkBaseDevice::drawGlyphRun(const SkPaint& paint, SkGlyphRun* info) { - SkPaint glyphPaint(paint); - glyphPaint.setTextEncoding(SkPaint::kGlyphID_TextEncoding); - - auto glyphs = info->copyGlyphIDs(); - - this->drawPosText( - glyphs.get(), info->runSize() * 2, - info->getPositions(), 2, SkPoint::Make(0, 0), glyphPaint); -} - void SkBaseDevice::drawBitmapLattice(const SkBitmap& bitmap, const SkCanvas::Lattice& lattice, const SkRect& dst, const SkPaint& paint) { @@ -516,8 +496,6 @@ void SkBaseDevice::drawTextRSXform(const void* text, size_t len, SkPaint localPaint(paint); SkShader* shader = paint.getShader(); - SkScalar pos[2] = {0.0f, 0.0f}; - SkPoint origin = SkPoint::Make(0, 0); SkMatrix localM, currM; const void* stopText = (const char*)text + len; @@ -539,7 +517,7 @@ void SkBaseDevice::drawTextRSXform(const void* text, size_t len, } int subLen = proc((const char*)text); - this->drawPosText(text, subLen, pos, 2, origin, localPaint); + this->drawText(text, subLen, 0, 0, localPaint); text = (const char*)text + subLen; } } |