blob: 0200fac7ea4987a4476f88db4edc1bd4621d0f9f [file] [log] [blame]
Hal Canary87515122019-03-15 14:22:51 -04001// Copyright 2019 Google LLC.
2// Use of this source code is governed by a BSD-style license that can be found in the LICENSE file.
Mike Kleinc0bd9f92019-04-23 12:05:21 -05003#include "tools/fiddle/examples.h"
Hal Canary87515122019-03-15 14:22:51 -04004// HASH=52d2c8d1b9b428de4477b4caa1543a3d
Hal Canarya7181e7c2019-03-18 16:06:34 -04005REG_FIDDLE(Difference, 256, 256, false, 5) {
Hal Canary87515122019-03-15 14:22:51 -04006void draw(SkCanvas* canvas) {
7 canvas->drawImage(image, 0, 0);
8 canvas->drawImage(image, 128, 0);
9 canvas->drawImage(image, 0, 128);
10 canvas->drawImage(image, 128, 128);
11 SkPaint paint;
12 paint.setBlendMode(SkBlendMode::kDstATop);
13 SkColor alphas[] = { SK_ColorBLACK, SK_ColorTRANSPARENT };
14 SkPoint vert[] = { { 0, 0 }, { 0, 256 } };
Herb Derby5623d9e2022-06-16 15:03:00 -040015 paint.setShader(SkGradientShader::MakeLinear(vert, alphas, nullptr, std::size(alphas),
Mike Reedfae8fce2019-04-03 10:27:45 -040016 SkTileMode::kClamp));
Hal Canary87515122019-03-15 14:22:51 -040017 canvas->drawPaint(paint);
18 canvas->clipRect( { 30, 30, 226, 226 } );
19 canvas->drawColor(0x80bb9977, SkBlendMode::kDifference);
20}
21} // END FIDDLE