xref: /aosp_15_r20/external/skia/docs/examples/Canvas_makeSurface.cpp (revision c8dee2aa9b3f27cf6c858bd81872bdeb2c07ed17)
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 REG_FIDDLE(Canvas_makeSurface, 256, 256, true, 0) {
draw(SkCanvas * canvas)5 void draw(SkCanvas* canvas) {
6     sk_sp<SkSurface> surface = SkSurfaces::Raster(SkImageInfo::MakeN32Premul(5, 6));
7     SkCanvas* smallCanvas = surface->getCanvas();
8     SkImageInfo imageInfo = SkImageInfo::MakeN32Premul(3, 4);
9     sk_sp<SkSurface> compatible = smallCanvas->makeSurface(imageInfo);
10     SkDebugf("compatible %c= nullptr\n", compatible == nullptr ? '=' : '!');
11     SkDebugf("size = %d, %d\n", compatible->width(), compatible->height());
12 }
13 }  // END FIDDLE
14