aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/effects/SkBlurMask.cpp
diff options
context:
space:
mode:
authorGravatar bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-09-02 15:06:44 +0000
committerGravatar bungeman@google.com <bungeman@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2011-09-02 15:06:44 +0000
commit5af16f8d670b3ce1c7644a4737e02e2e2257614e (patch)
treefe95119fbd00a5385e40960fefac9fcf4476cb1c /src/effects/SkBlurMask.cpp
parentabb061acfe81da7938811e3fc2c8b7488c9037d0 (diff)
Reduce size of filter mask.
http://codereview.appspot.com/4965057/ Reduce the size of filter masks, fix HQ blur when clipped, and add tests. git-svn-id: http://skia.googlecode.com/svn/trunk@2211 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/effects/SkBlurMask.cpp')
-rw-r--r--src/effects/SkBlurMask.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/effects/SkBlurMask.cpp b/src/effects/SkBlurMask.cpp
index ac1e780130..5dc9f448c3 100644
--- a/src/effects/SkBlurMask.cpp
+++ b/src/effects/SkBlurMask.cpp
@@ -222,7 +222,9 @@ void SkMask_FreeImage(uint8_t* image) {
}
bool SkBlurMask::Blur(SkMask* dst, const SkMask& src,
- SkScalar radius, Style style, Quality quality) {
+ SkScalar radius, Style style, Quality quality,
+ SkIPoint* margin)
+{
if (src.fFormat != SkMask::kA8_Format) {
return false;
}
@@ -247,6 +249,9 @@ bool SkBlurMask::Blur(SkMask* dst, const SkMask& src,
int padx = passCount * rx;
int pady = passCount * ry;
+ if (margin) {
+ margin->set(padx, pady);
+ }
dst->fBounds.set(src.fBounds.fLeft - padx, src.fBounds.fTop - pady,
src.fBounds.fRight + padx, src.fBounds.fBottom + pady);
dst->fRowBytes = dst->fBounds.width();