1// 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. 3#include "tools/fiddle/examples.h" 4// HASH=76d4d4a7931a48495e4d5f54e073be53 5REG_FIDDLE(Dither_b, 256, 256, false, 0) { 6void draw(SkCanvas* canvas) { 7 canvas->clear(0); 8 SkBitmap bm32; 9 bm32.allocPixels(SkImageInfo::Make(20, 10, kN32_SkColorType, kPremul_SkAlphaType)); 10 SkCanvas c32(bm32); 11 SkPoint points[] = {{0, 0}, {20, 0}}; 12 SkColor colors[] = {0xFF334455, 0xFF662211 }; 13 SkPaint paint; 14 paint.setShader(SkGradientShader::MakeLinear( 15 points, colors, nullptr, SK_ARRAY_COUNT(colors), 16 SkTileMode::kClamp)); 17 paint.setDither(true); 18 auto img = bm32.asImage(); 19 c32.drawPaint(paint); 20 canvas->scale(12, 12); 21 canvas->drawImage(img, 0, 0); 22 paint.setBlendMode(SkBlendMode::kPlus); 23 SkSamplingOptions sampling; 24 canvas->drawImage(img, 0, 11, sampling, &paint); 25 canvas->drawImage(img, 0, 11, sampling, &paint); 26 canvas->drawImage(img, 0, 11, sampling, &paint); 27} 28} // END FIDDLE 29