diff options
author | edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-03-24 18:05:10 +0000 |
---|---|---|
committer | edisonn@google.com <edisonn@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2013-03-24 18:05:10 +0000 |
commit | b62f93fdbcdea16329847e30a351ee35a0552e83 (patch) | |
tree | 19c4bdea2a2c244c968cf15aaa1e0cdc6e0c4372 | |
parent | 7e32851d5473d14db5c396f5877e3dfcb7b19f6d (diff) |
Don't pretend we can draw MaskFilters, it produces artifacts that make the text unreadable when using CSS shadows.
Review URL: https://codereview.chromium.org/12989032
git-svn-id: http://skia.googlecode.com/svn/trunk@8351 2bbb7eff-a529-9590-31e7-b0007b416f81
-rw-r--r-- | src/pdf/SkPDFDevice.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/pdf/SkPDFDevice.cpp b/src/pdf/SkPDFDevice.cpp index 8f0f3d255e..6865b0f936 100644 --- a/src/pdf/SkPDFDevice.cpp +++ b/src/pdf/SkPDFDevice.cpp @@ -946,6 +946,12 @@ void SkPDFDevice::drawSprite(const SkDraw& d, const SkBitmap& bitmap, void SkPDFDevice::drawText(const SkDraw& d, const void* text, size_t len, SkScalar x, SkScalar y, const SkPaint& paint) { + NOT_IMPLEMENTED(paint.getMaskFilter() != NULL, false); + if (paint.getMaskFilter() != NULL) { + // Don't pretend we support drawing MaskFilters, it makes for artifacts + // making text unreadable (e.g. same text twice when using CSS shadows). + return; + } SkPaint textPaint = calculate_text_paint(paint); ScopedContentEntry content(this, d, textPaint, true); if (!content.entry()) { @@ -985,6 +991,12 @@ void SkPDFDevice::drawText(const SkDraw& d, const void* text, size_t len, void SkPDFDevice::drawPosText(const SkDraw& d, const void* text, size_t len, const SkScalar pos[], SkScalar constY, int scalarsPerPos, const SkPaint& paint) { + NOT_IMPLEMENTED(paint.getMaskFilter() != NULL, false); + if (paint.getMaskFilter() != NULL) { + // Don't pretend we support drawing MaskFilters, it makes for artifacts + // making text unreadable (e.g. same text twice when using CSS shadows). + return; + } SkASSERT(1 == scalarsPerPos || 2 == scalarsPerPos); SkPaint textPaint = calculate_text_paint(paint); ScopedContentEntry content(this, d, textPaint, true); |