diff options
author | Herb Derby <herb@google.com> | 2018-05-09 16:36:11 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2018-06-05 20:11:39 +0000 |
commit | 4225b3220ef4bf50f0d9403f812ea94d50c4ee59 (patch) | |
tree | a03d6ff5708e6c41fdc4b1edb8f5200d08d7dc63 /src/core/SkDraw.cpp | |
parent | f105dc71e4200db5a57a1e28b8bca2b3689debdb (diff) |
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>
Diffstat (limited to 'src/core/SkDraw.cpp')
-rw-r--r-- | src/core/SkDraw.cpp | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/src/core/SkDraw.cpp b/src/core/SkDraw.cpp index b7150f85f8..e975ea2a4b 100644 --- a/src/core/SkDraw.cpp +++ b/src/core/SkDraw.cpp @@ -1537,37 +1537,6 @@ SkScalerContextFlags SkDraw::scalerContextFlags() const { return flags; } -void SkDraw::drawText(const char text[], size_t byteLength, SkScalar x, SkScalar y, - const SkPaint& paint, const SkSurfaceProps* props) const { - SkASSERT(byteLength == 0 || text != nullptr); - - SkDEBUGCODE(this->validate();) - - // nothing to draw - if (text == nullptr || byteLength == 0 || fRC->isEmpty()) { - return; - } - - // SkScalarRec doesn't currently have a way of representing hairline stroke and - // will fill if its frame-width is 0. - if (ShouldDrawTextAsPaths(paint, *fMatrix)) { - this->drawText_asPaths(text, byteLength, x, y, paint); - return; - } - - auto cache = SkStrikeCache::FindOrCreateStrikeExclusive( - paint, props, this->scalerContextFlags(), fMatrix); - - // The Blitter Choose needs to be live while using the blitter below. - SkAutoBlitterChoose blitterChooser(*this, nullptr, paint); - SkAAClipBlitterWrapper wrapper(*fRC, blitterChooser.get()); - DrawOneGlyph drawOneGlyph(*this, paint, cache.get(), wrapper.getBlitter()); - - SkFindAndPlaceGlyph::ProcessText( - paint.getTextEncoding(), text, byteLength, - {x, y}, *fMatrix, paint.getTextAlign(), cache.get(), drawOneGlyph); -} - ////////////////////////////////////////////////////////////////////////////// void SkDraw::drawPosText_asPaths(const char text[], size_t byteLength, const SkScalar pos[], |