aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/atlastext/SkAtlasTextTarget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/atlastext/SkAtlasTextTarget.cpp')
-rw-r--r--src/atlastext/SkAtlasTextTarget.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/atlastext/SkAtlasTextTarget.cpp b/src/atlastext/SkAtlasTextTarget.cpp
index 4d7d65d746..8a382c7233 100644
--- a/src/atlastext/SkAtlasTextTarget.cpp
+++ b/src/atlastext/SkAtlasTextTarget.cpp
@@ -74,6 +74,8 @@ void SkAtlasTextTarget::concat(const SkMatrix& matrix) { this->accessCTM()->preC
//////////////////////////////////////////////////////////////////////////////
static const GrColorSpaceInfo kColorSpaceInfo(nullptr, kRGBA_8888_GrPixelConfig);
+static const SkSurfaceProps kProps(
+ SkSurfaceProps::kUseDistanceFieldFonts_Flag, kUnknown_SkPixelGeometry);
//////////////////////////////////////////////////////////////////////////////
@@ -83,7 +85,8 @@ public:
int width, int height,
void* handle)
: GrTextUtils::Target(width, height, kColorSpaceInfo)
- , SkAtlasTextTarget(std::move(context), width, height, handle) {
+ , SkAtlasTextTarget(std::move(context), width, height, handle)
+ , fGlyphDrawer(kProps, kColorSpaceInfo) {
fOpMemoryPool = fContext->internal().grContext()->contextPriv().refOpMemoryPool();
}
@@ -109,6 +112,10 @@ public:
return this->context()->internal().grContext();
}
+ SkGlyphRunListDrawer* glyphDrawer() override {
+ return &fGlyphDrawer;
+ }
+
/** SkAtlasTextTarget overrides */
void drawText(const SkGlyphID[], const SkPoint[], int glyphCnt, uint32_t color,
@@ -123,6 +130,7 @@ private:
using SkAtlasTextTarget::fHeight;
SkTArray<std::unique_ptr<GrAtlasTextOp>, true> fOps;
sk_sp<GrOpMemoryPool> fOpMemoryPool;
+ SkGlyphRunListDrawer fGlyphDrawer;
};
//////////////////////////////////////////////////////////////////////////////