| // 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<SkColorSpace> colorSpace = SkColorSpace::MakeSRGBLinear(); | 
 |  | 
 |     SkImageInfo imageInfo = | 
 |             SkImageInfo::Make(100, 100, kRGBA_F16_SkColorType, kPremul_SkAlphaType, colorSpace); | 
 |     sk_sp<SkSurface> surface = SkSurface::MakeRaster(imageInfo); | 
 |     SkPaint p; | 
 |     surface->getCanvas()->drawRect(SkRect::MakeXYWH(20, 20, 40, 40), p); | 
 |  | 
 |     sk_sp<SkColorSpace> colorSpace2 = SkColorSpace::MakeSRGB(); | 
 |  | 
 |     SkImageInfo imageInfo2 = | 
 |             SkImageInfo::Make(100, 100, kN32_SkColorType, kPremul_SkAlphaType, colorSpace2); | 
 |     sk_sp<SkSurface> 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 |