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

Go to the source code of this file.

Functions

 REG_FIDDLE (Canvas_getDeviceClipBounds, 256, 256, true, 0)
 

Function Documentation

◆ REG_FIDDLE()

REG_FIDDLE ( Canvas_getDeviceClipBounds  ,
256  ,
256  ,
true  ,
 
)

Definition at line 5 of file Canvas_getDeviceClipBounds.cpp.

5 {
6void draw(SkCanvas* canvas) {
7 SkCanvas device(256, 256);
8 canvas = &device;
10 SkDebugf("left:%d top:%d right:%d bottom:%d\n",
11 bounds.fLeft, bounds.fTop, bounds.fRight, bounds.fBottom);
12 SkPoint clipPoints[] = {{30, 130}, {120, 130}, {120, 230} };
14 clipPath.addPoly(clipPoints, std::size(clipPoints), true);
15 canvas->save();
16 canvas->clipPath(clipPath);
17 bounds = canvas->getDeviceClipBounds();
18 SkDebugf("left:%d top:%d right:%d bottom:%d\n",
19 bounds.fLeft, bounds.fTop, bounds.fRight, bounds.fBottom);
20 canvas->restore();
21 canvas->scale(1.f/2, 1.f/2);
22 canvas->clipPath(clipPath);
23 bounds = canvas->getDeviceClipBounds();
24 SkDebugf("left:%d top:%d right:%d bottom:%d\n",
25 bounds.fLeft, bounds.fTop, bounds.fRight, bounds.fBottom);
26}
27} // END FIDDLE
void SK_SPI SkDebugf(const char format[],...) SK_PRINTF_LIKE(1
static void draw(SkCanvas *canvas, SkRect &target, int x, int y)
Definition aaclip.cpp:27
void restore()
Definition SkCanvas.cpp:465
void clipPath(const SkPath &path, SkClipOp op, bool doAntiAlias)
SkIRect getDeviceClipBounds() const
int save()
Definition SkCanvas.cpp:451
void scale(SkScalar sx, SkScalar sy)
VkDevice device
Definition main.cc:53
Optional< SkRect > bounds
Definition SkRecords.h:189
clipPath(r.path, r.opAA.op(), r.opAA.aa())) DRAW(ClipRRect