OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2011 Google Inc. | 2 * Copyright 2011 Google Inc. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #include <functional> | 8 #include <functional> |
9 #include "gm.h" | 9 #include "gm.h" |
10 #include "SkAutoPixmapStorage.h" | 10 #include "SkAutoPixmapStorage.h" |
(...skipping 331 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
342 | 342 |
343 static SkImageGenerator* gen_picture(const SkImageInfo& info) { | 343 static SkImageGenerator* gen_picture(const SkImageInfo& info) { |
344 SkPictureRecorder recorder; | 344 SkPictureRecorder recorder; |
345 draw_opaque_contents(recorder.beginRecording(SkRect::MakeIWH(info.width(), i
nfo.height()))); | 345 draw_opaque_contents(recorder.beginRecording(SkRect::MakeIWH(info.width(), i
nfo.height()))); |
346 sk_sp<SkPicture> pict(recorder.finishRecordingAsPicture()); | 346 sk_sp<SkPicture> pict(recorder.finishRecordingAsPicture()); |
347 return SkImageGenerator::NewFromPicture(info.dimensions(), pict.get(), nullp
tr, nullptr); | 347 return SkImageGenerator::NewFromPicture(info.dimensions(), pict.get(), nullp
tr, nullptr); |
348 } | 348 } |
349 | 349 |
350 static SkImageGenerator* gen_png(const SkImageInfo& info) { | 350 static SkImageGenerator* gen_png(const SkImageInfo& info) { |
351 sk_sp<SkImage> image(make_raster(info, nullptr, draw_opaque_contents)); | 351 sk_sp<SkImage> image(make_raster(info, nullptr, draw_opaque_contents)); |
352 SkAutoTUnref<SkData> data(image->encode(SkImageEncoder::kPNG_Type, 100)); | 352 sk_sp<SkData> data(image->encode(SkImageEncoder::kPNG_Type, 100)); |
353 return SkImageGenerator::NewFromEncoded(data); | 353 return SkImageGenerator::NewFromEncoded(data.get()); |
354 } | 354 } |
355 | 355 |
356 static SkImageGenerator* gen_jpg(const SkImageInfo& info) { | 356 static SkImageGenerator* gen_jpg(const SkImageInfo& info) { |
357 sk_sp<SkImage> image(make_raster(info, nullptr, draw_opaque_contents)); | 357 sk_sp<SkImage> image(make_raster(info, nullptr, draw_opaque_contents)); |
358 SkAutoTUnref<SkData> data(image->encode(SkImageEncoder::kJPEG_Type, 100)); | 358 sk_sp<SkData> data(image->encode(SkImageEncoder::kJPEG_Type, 100)); |
359 return SkImageGenerator::NewFromEncoded(data); | 359 return SkImageGenerator::NewFromEncoded(data.get()); |
360 } | 360 } |
361 | 361 |
362 typedef SkImageGenerator* (*GeneratorMakerProc)(const SkImageInfo&); | 362 typedef SkImageGenerator* (*GeneratorMakerProc)(const SkImageInfo&); |
363 | 363 |
364 static void show_scaled_generator(SkCanvas* canvas, SkImageGenerator* gen) { | 364 static void show_scaled_generator(SkCanvas* canvas, SkImageGenerator* gen) { |
365 const SkImageInfo genInfo = gen->getInfo(); | 365 const SkImageInfo genInfo = gen->getInfo(); |
366 | 366 |
367 SkAutoCanvasRestore acr(canvas, true); | 367 SkAutoCanvasRestore acr(canvas, true); |
368 | 368 |
369 SkBitmap bm; | 369 SkBitmap bm; |
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
501 } | 501 } |
502 if (context) { | 502 if (context) { |
503 sk_sp<SkImage> texImage(image->makeTextureImage(context)); | 503 sk_sp<SkImage> texImage(image->makeTextureImage(context)); |
504 if (texImage) { | 504 if (texImage) { |
505 canvas->drawImage(texImage, 0, 0); | 505 canvas->drawImage(texImage, 0, 0); |
506 } | 506 } |
507 } | 507 } |
508 canvas->translate(image->width() + kPad, 0); | 508 canvas->translate(image->width() + kPad, 0); |
509 } | 509 } |
510 } | 510 } |
OLD | NEW |