skia2/docs/examples/backdrop_blur_with_rrect_clip.cpp
Hal Canary 6c8422c671 add more docs/examples from named fiddles.
ignore offscreen, srgb, and animated fiddles for now.

Change-Id: I923131b684865698e6cda138b004930e11f504d5
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/263713
Commit-Queue: Hal Canary <halcanary@google.com>
Reviewed-by: Ben Wagner <bungeman@google.com>
2020-01-14 19:22:26 +00:00

25 lines
812 B
C++

// Copyright 2020 Google LLC.
// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
#include "tools/fiddle/examples.h"
REG_FIDDLE(backdrop_blur_with_rrect_clip, 512, 512, false, 3) {
void draw(SkCanvas* canvas) {
const SkRect r = SkRect::MakeXYWH(128, 128, 256, 256);
const SkRRect rr = SkRRect::MakeRectXY(r, 128, 128);
canvas->drawImage(image, 0, 0);
canvas->save();
canvas->clipRRect(rr, true);
sk_sp<SkImageFilter> filter = SkBlurImageFilter::Make(10, 10, nullptr);
SkPaint p;
p.setImageFilter(std::move(filter));
SkCanvas::SaveLayerRec slr(&r, &p, SkCanvas::kInitWithPrevious_SaveLayerFlag);
canvas->saveLayer(slr);
canvas->drawColor(0x40FFFFFF);
canvas->restore();
canvas->restore();
}
} // END FIDDLE