Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
colorfilteralpha8.cpp
Go to the documentation of this file.
1/*
2 * Copyright 2016 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#include "gm/gm.h"
16#include "include/core/SkSize.h"
18
20public:
22
23protected:
24 SkString getName() const override { return SkString("colorfilteralpha8"); }
25
26 SkISize getISize() override { return SkISize::Make(400, 400); }
27
28 void onDraw(SkCanvas* canvas) override {
29 canvas->clear(SK_ColorRED);
30
33 bitmap.allocPixels(info);
34 bitmap.eraseColor(0x88FFFFFF);
35
37 float opaqueGrayMatrix[20] = {
38 0.0f, 0.0f, 0.0f, 1.0f, 0.0f,
39 0.0f, 0.0f, 0.0f, 1.0f, 0.0f,
40 0.0f, 0.0f, 0.0f, 1.0f, 0.0f,
41 0.0f, 0.0f, 0.0f, 0.0f, 1.0f
42 };
43 paint.setColorFilter(SkColorFilters::Matrix(opaqueGrayMatrix));
44
45 canvas->drawImage(bitmap.asImage(), 100.0f, 100.0f, SkSamplingOptions(), &paint);
46 }
47
48private:
49 using INHERITED = skiagm::GM;
50};
51DEF_GM( return new ColorFilterAlpha8; )
static void info(const char *fmt,...) SK_PRINTF_LIKE(1
Definition DM.cpp:213
constexpr SkColor SK_ColorRED
Definition SkColor.h:126
SkISize getISize() override
SkString getName() const override
void onDraw(SkCanvas *canvas) override
void clear(SkColor color)
Definition SkCanvas.h:1199
void drawImage(const SkImage *image, SkScalar left, SkScalar top)
Definition SkCanvas.h:1528
static sk_sp< SkColorFilter > Matrix(const SkColorMatrix &)
const Paint & paint
#define DEF_GM(CODE)
Definition gm.h:40
static constexpr SkISize Make(int32_t w, int32_t h)
Definition SkSize.h:20
static SkImageInfo MakeA8(int width, int height)