From 1662257bdaaaf26b016bf2a3e329c34f7f5ed581 Mon Sep 17 00:00:00 2001 From: Ben Wagner Date: Fri, 10 Nov 2017 16:24:50 -0500 Subject: Alloc glyph image correctly for SkMask::k3D_Format. Remove the no longer used outside Skia SK_SUPPORT_LEGACY_EMBOSSMASKFILTER define, and either delete the code it guards or update it to use the new emboss mask filter factory. Re-enable the code to test the emboss mask filter. Add a test to ensure that embossed text is drawn correctly, as before glyphs did not allocate the proper amount of memory for the k3D_Format which the emboss mask filter produces. Fixes SkEmbossMask::Emboss to write the whole of the mul and add planes to avoid pixel differences and MemorySanitizer errors. Update the GPU to understand the k3D_Format and use just the alpha plane, ignoring the mul and add plane which it currently cannot support. Change-Id: Icac1a3f37d6e8c6be3151df570f5e14111e18585 Reviewed-on: https://skia-review.googlesource.com/70260 Reviewed-by: Herb Derby Reviewed-on: https://skia-review.googlesource.com/70962 Commit-Queue: Ben Wagner --- samplecode/SampleEffects.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'samplecode/SampleEffects.cpp') diff --git a/samplecode/SampleEffects.cpp b/samplecode/SampleEffects.cpp index 8c6793eb67..49654983da 100644 --- a/samplecode/SampleEffects.cpp +++ b/samplecode/SampleEffects.cpp @@ -10,6 +10,7 @@ #include "SkCanvas.h" #include "SkColorMatrixFilter.h" #include "SkDiscretePathEffect.h" +#include "SkEmbossMaskFilter.h" #include "SkGradientShader.h" #include "SkPaint.h" #include "SkView.h" @@ -28,11 +29,9 @@ static void paint_proc1(SkPaint* paint) { } static void paint_proc2(SkPaint* paint) { -#ifdef SK_SUPPORT_LEGACY_EMBOSSMASKFILTER - SkScalar dir[3] = { 1, 1, 1}; - paint->setMaskFilter( - SkBlurMaskFilter::MakeEmboss(SkBlurMask::ConvertRadiusToSigma(1), dir, 0.1f, 0.05f)); -#endif + paint->setMaskFilter(SkEmbossMaskFilter::Make( + SkBlurMask::ConvertRadiusToSigma(SkIntToScalar(1)), + { { SK_Scalar1, SK_Scalar1, SK_Scalar1 }, 0, 64, 16 })); } static void paint_proc3(SkPaint* paint) { -- cgit v1.2.3