Index: src/effects/SkBlurMask.h |
diff --git a/src/effects/SkBlurMask.h b/src/effects/SkBlurMask.h |
index eb67d4c9f8b04f9443123c9f3c10b3a9a9a39567..d4cd3d1ea31c6c16233aed889accc54278186f65 100644 |
--- a/src/effects/SkBlurMask.h |
+++ b/src/effects/SkBlurMask.h |
@@ -40,9 +40,16 @@ public: |
SkIPoint *margin = NULL, |
SkMask::CreateMode createMode = |
SkMask::kComputeBoundsAndRenderImage_CreateMode); |
+ |
+ // forceQuality will prevent BoxBlur from falling back to the low quality approach when sigma |
+ // is very small -- this can be used predict the margin bump ahead of time without completely |
+ // replicating the internal logic. This permits not only simpler caching of blurred results, |
+ // but also being able to predict precisely at what pixels the blurred profile of e.g. a |
+ // rectangle will lie. |
+ |
static bool BoxBlur(SkMask* dst, const SkMask& src, |
SkScalar sigma, Style style, Quality quality, |
- SkIPoint* margin = NULL); |
+ SkIPoint* margin = NULL, bool forceQuality = false); |
reed1
2014/04/23 21:48:00
What is the impact on the raster side if we just a
|
// the "ground truth" blur does a gaussian convolution; it's slow |
// but useful for comparison purposes. |