Index: src/effects/SkBlurMask.h |
=================================================================== |
--- src/effects/SkBlurMask.h (revision 9604) |
+++ src/effects/SkBlurMask.h (working copy) |
@@ -43,6 +43,27 @@ |
static bool BlurGroundTruth(SkMask* dst, const SkMask& src, |
SkScalar provided_radius, Style style, |
SkIPoint* margin = NULL); |
+ |
+ // This constant approximates the scaling done in the software path's |
+ // "high quality" mode, in SkBlurMask::Blur() (1 / sqrt(3)). |
+ // IMHO, it actually should be 1: we blur "less" than we should do |
+ // according to the CSS and canvas specs, simply because Safari does the same. |
+ // Firefox used to do the same too, until 4.0 where they fixed it. So at some |
+ // point we should probably get rid of these scaling constants and rebaseline |
+ // all the blur tests. |
+ static const SkScalar kBLUR_SIGMA_SCALE; |
+ |
+ // scale factor for the blur radius to match the behavior of the all existing blur |
+ // code (both on the CPU and the GPU). This magic constant is 1/sqrt(3). |
+ // TODO: get rid of this fudge factor and move any required fudging up into |
+ // the calling library |
+ static const SkScalar kBlurRadiusFudgeFactor; |
+ |
+ // To avoid unseemly allocation requests (esp. for finite platforms like |
+ // handset) we limit the radius so something manageable. (as opposed to |
+ // a request like 10,000) |
+ static const SkScalar kMAX_BLUR_RADIUS; |
+ |
}; |
#endif |