Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Functions
Image_makeWithFilter.cpp File Reference
#include "tools/fiddle/examples.h"

Go to the source code of this file.

Functions

 REG_FIDDLE (Image_makeWithFilter, 256, 256, false, 5)
 

Function Documentation

◆ REG_FIDDLE()

REG_FIDDLE ( Image_makeWithFilter  ,
256  ,
256  ,
false  ,
 
)

Definition at line 5 of file Image_makeWithFilter.cpp.

5 {
6void draw(SkCanvas* canvas) {
8 -10.0f * frame, 5.0f * frame, 3.0f, 3.0f, SK_ColorBLUE, nullptr);
9 sk_sp<SkImageFilter> offsetFilter = SkImageFilters::Offset(40, 40, shadowFilter, nullptr);
10 SkIRect subset = image->bounds();
11 SkIRect clipBounds = image->bounds();
12 clipBounds.outset(60, 60);
13 SkIRect outSubset;
16
17 if (auto rContext = canvas->recordingContext()) {
18 filtered = SkImages::MakeWithFilter(rContext, image, offsetFilter.get(),
19 subset, clipBounds, &outSubset, &offset);
20 } else {
22 subset, clipBounds, &outSubset, &offset);
23 }
24
26 paint.setAntiAlias(true);
28 canvas->drawLine(0, 0, offset.fX, offset.fY, paint);
29 canvas->translate(offset.fX, offset.fY);
30 canvas->drawImage(filtered, 0, 0);
31 canvas->drawRect(SkRect::Make(outSubset), paint);
32}
33} // END FIDDLE
constexpr SkColor SK_ColorBLUE
Definition SkColor.h:135
static void draw(SkCanvas *canvas, SkRect &target, int x, int y)
Definition aaclip.cpp:27
void drawRect(const SkRect &rect, const SkPaint &paint)
void translate(SkScalar dx, SkScalar dy)
virtual GrRecordingContext * recordingContext() const
void drawLine(SkScalar x0, SkScalar y0, SkScalar x1, SkScalar y1, const SkPaint &paint)
void drawImage(const SkImage *image, SkScalar left, SkScalar top)
Definition SkCanvas.h:1528
static sk_sp< SkImageFilter > DropShadow(SkScalar dx, SkScalar dy, SkScalar sigmaX, SkScalar sigmaY, SkColor color, sk_sp< SkImageFilter > input, const CropRect &cropRect={})
static sk_sp< SkImageFilter > Offset(SkScalar dx, SkScalar dy, sk_sp< SkImageFilter > input, const CropRect &cropRect={})
SkIRect bounds() const
Definition SkImage.h:303
@ kStroke_Style
set to stroke geometry
Definition SkPaint.h:194
T * get() const
Definition SkRefCnt.h:303
const Paint & paint
sk_sp< SkImage > image
Definition examples.cpp:29
double frame
Definition examples.cpp:31
SK_API sk_sp< SkImage > MakeWithFilter(sk_sp< SkImage > src, const SkImageFilter *filter, const SkIRect &subset, const SkIRect &clipBounds, SkIRect *outSubset, SkIPoint *offset)
filtered(names, to_skip)
Definition zip_utils.py:20
Point offset
void outset(int32_t dx, int32_t dy)
Definition SkRect.h:428
static SkRect Make(const SkISize &size)
Definition SkRect.h:669