diff options
Diffstat (limited to 'gm/pictureimagegenerator.cpp')
-rw-r--r-- | gm/pictureimagegenerator.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/gm/pictureimagegenerator.cpp b/gm/pictureimagegenerator.cpp index ab4c808fd1..b247af2f7a 100644 --- a/gm/pictureimagegenerator.cpp +++ b/gm/pictureimagegenerator.cpp @@ -138,6 +138,7 @@ protected: { SkISize::Make(200, 100), -1, -1, 0.5f }, }; + auto srgbColorSpace = SkColorSpace::MakeNamed(SkColorSpace::kSRGB_Named); const unsigned kDrawsPerRow = 4; const SkScalar kDrawSize = 250; @@ -154,10 +155,14 @@ protected: } std::unique_ptr<SkImageGenerator> gen( SkImageGenerator::NewFromPicture(configs[i].size, fPicture.get(), &m, - p.getAlpha() != 255 ? &p : nullptr)); + p.getAlpha() != 255 ? &p : nullptr, + srgbColorSpace)); + + SkImageInfo bmInfo = gen->getInfo().makeColorSpace( + sk_ref_sp(canvas->imageInfo().colorSpace())); + SkBitmap bm; - SkAssertResult(gen->tryGenerateBitmap(&bm, SkImageInfo::MakeN32Premul(configs[i].size), - nullptr)); + SkAssertResult(gen->tryGenerateBitmap(&bm, bmInfo, nullptr)); const SkScalar x = kDrawSize * (i % kDrawsPerRow); const SkScalar y = kDrawSize * (i / kDrawsPerRow); |