// Copyright 2020 Google LLC. // Use of this source code is governed by a BSD-style license that can be found in the LICENSE file. #include "tools/fiddle/examples.h" REG_FIDDLE(f16to8888drawImageBug, 256, 256, false, 0) { // f16to8888drawImageBug void draw(SkCanvas* canvas) { sk_sp colorSpace = SkColorSpace::MakeSRGBLinear(); SkImageInfo imageInfo = SkImageInfo::Make(100, 100, kRGBA_F16_SkColorType, kPremul_SkAlphaType, colorSpace); sk_sp surface = SkSurface::MakeRaster(imageInfo); SkPaint p; surface->getCanvas()->drawRect(SkRect::MakeXYWH(20, 20, 40, 40), p); sk_sp colorSpace2 = SkColorSpace::MakeSRGB(); SkImageInfo imageInfo2 = SkImageInfo::Make(100, 100, kN32_SkColorType, kPremul_SkAlphaType, colorSpace2); sk_sp surface2 = SkSurface::MakeRaster(imageInfo2); surface2->getCanvas()->drawImage(surface->makeImageSnapshot(), 0, 0); canvas->drawImage(surface->makeImageSnapshot(), 0, 0); canvas->drawImage(surface2->makeImageSnapshot(), 50, 0); } } // END FIDDLE