Use bitmap.asImage()
Change-Id: Ie16194937530d7cd75f84d9af66c31b77875ef83
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/347043
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Mike Reed <reed@google.com>
diff --git a/bench/BulkRectBench.cpp b/bench/BulkRectBench.cpp
index 321087d..ebf4df9 100644
--- a/bench/BulkRectBench.cpp
+++ b/bench/BulkRectBench.cpp
@@ -221,7 +221,7 @@
SkBitmap bm;
bm.allocN32Pixels(256, 256);
bm.eraseColor(fColors[i].toSkColor());
- auto image = SkImage::MakeFromBitmap(bm);
+ auto image = bm.asImage();
fImages[i] = direct ? image->makeTextureImage(direct) : std::move(image);
}
diff --git a/docs/examples/Canvas_SrcRectConstraint.cpp b/docs/examples/Canvas_SrcRectConstraint.cpp
index e42eabf..69b07ce 100644
--- a/docs/examples/Canvas_SrcRectConstraint.cpp
+++ b/docs/examples/Canvas_SrcRectConstraint.cpp
@@ -15,7 +15,7 @@
canvas->scale(16, 16);
canvas->drawBitmap(redBorder, 0, 0, nullptr);
canvas->resetMatrix();
- sk_sp<SkImage> image = SkImage::MakeFromBitmap(redBorder);
+ sk_sp<SkImage> image = redBorder.asImage();
SkPaint lowPaint;
lowPaint.setFilterQuality(kLow_SkFilterQuality);
for (auto constraint : { SkCanvas::kStrict_SrcRectConstraint,
diff --git a/docs/examples/Canvas_drawImageNine.cpp b/docs/examples/Canvas_drawImageNine.cpp
index 0cad667..b75c2ab 100644
--- a/docs/examples/Canvas_drawImageNine.cpp
+++ b/docs/examples/Canvas_drawImageNine.cpp
@@ -21,7 +21,7 @@
}
left = right;
}
- sk_sp<SkImage> image = SkImage::MakeFromBitmap(bitmap);
+ sk_sp<SkImage> image = bitmap.asImage();
SkImage* imagePtr = image.get();
for (auto dest: { 20, 30, 40, 60, 90 } ) {
canvas->drawImageNine(imagePtr, center, SkRect::MakeWH(dest, dest), nullptr);
diff --git a/docs/examples/Canvas_drawImageNine_2.cpp b/docs/examples/Canvas_drawImageNine_2.cpp
index 826e18a..661dccf 100644
--- a/docs/examples/Canvas_drawImageNine_2.cpp
+++ b/docs/examples/Canvas_drawImageNine_2.cpp
@@ -21,7 +21,7 @@
}
left = right;
}
- sk_sp<SkImage> image = SkImage::MakeFromBitmap(bitmap);
+ sk_sp<SkImage> image = bitmap.asImage();
for (auto dest: { 20, 30, 40, 60, 90 } ) {
canvas->drawImageNine(image, center, SkRect::MakeWH(dest, 110 - dest), nullptr);
canvas->translate(dest + 4, 0);
diff --git a/docs/examples/Canvas_drawImageRect.cpp b/docs/examples/Canvas_drawImageRect.cpp
index 3548d4d..fc01726 100644
--- a/docs/examples/Canvas_drawImageRect.cpp
+++ b/docs/examples/Canvas_drawImageRect.cpp
@@ -12,7 +12,7 @@
SkBitmap redBorder;
redBorder.installPixels(SkImageInfo::MakeN32Premul(4, 4),
(void*) pixels, sizeof(pixels[0]));
- sk_sp<SkImage> image = SkImage::MakeFromBitmap(redBorder);
+ sk_sp<SkImage> image = redBorder.asImage();
SkPaint lowPaint;
for (auto constraint : {
SkCanvas::kFast_SrcRectConstraint,
diff --git a/docs/examples/Canvas_drawImageRect_4.cpp b/docs/examples/Canvas_drawImageRect_4.cpp
index 2c49dc0..b80a270 100644
--- a/docs/examples/Canvas_drawImageRect_4.cpp
+++ b/docs/examples/Canvas_drawImageRect_4.cpp
@@ -9,7 +9,7 @@
SkBitmap bitmap;
bitmap.installPixels(SkImageInfo::MakeN32Premul(2, 2),
(void*) pixels, sizeof(pixels[0]));
- sk_sp<SkImage> image = SkImage::MakeFromBitmap(bitmap);
+ sk_sp<SkImage> image = bitmap.asImage();
SkPaint paint;
canvas->scale(4, 4);
for (auto alpha : { 50, 100, 150, 255 } ) {
diff --git a/docs/examples/Canvas_drawImageRect_5.cpp b/docs/examples/Canvas_drawImageRect_5.cpp
index b494683..22111e1 100644
--- a/docs/examples/Canvas_drawImageRect_5.cpp
+++ b/docs/examples/Canvas_drawImageRect_5.cpp
@@ -9,7 +9,7 @@
SkBitmap bitmap;
bitmap.installPixels(SkImageInfo::MakeN32Premul(2, 2),
(void*) pixels, sizeof(pixels[0]));
- sk_sp<SkImage> image = SkImage::MakeFromBitmap(bitmap);
+ sk_sp<SkImage> image = bitmap.asImage();
SkPaint paint;
canvas->scale(4, 4);
for (auto color : { SK_ColorRED, SK_ColorBLUE, SK_ColorGREEN } ) {
diff --git a/docs/examples/Canvas_drawImageRect_6.cpp b/docs/examples/Canvas_drawImageRect_6.cpp
index 7aeabe4..8940fa2 100644
--- a/docs/examples/Canvas_drawImageRect_6.cpp
+++ b/docs/examples/Canvas_drawImageRect_6.cpp
@@ -9,7 +9,7 @@
SkBitmap bitmap;
bitmap.installPixels(SkImageInfo::MakeN32Premul(2, 2),
(void*) pixels, sizeof(pixels[0]));
- sk_sp<SkImage> image = SkImage::MakeFromBitmap(bitmap);
+ sk_sp<SkImage> image = bitmap.asImage();
SkPaint paint;
canvas->scale(4, 4);
for (auto color : { SK_ColorRED, SK_ColorBLUE, SK_ColorGREEN } ) {
diff --git a/docs/examples/Image_MakeFromBitmap.cpp b/docs/examples/Image_MakeFromBitmap.cpp
index d8d6046..b93a30b 100644
--- a/docs/examples/Image_MakeFromBitmap.cpp
+++ b/docs/examples/Image_MakeFromBitmap.cpp
@@ -13,9 +13,9 @@
SkPixmap pixmap(imageInfo, storage[0], sizeof(storage) / 5);
SkBitmap bitmap;
bitmap.installPixels(pixmap);
- sk_sp<SkImage> image1 = SkImage::MakeFromBitmap(bitmap);
+ sk_sp<SkImage> image1 = bitmap.asImage();
bitmap.setImmutable();
- sk_sp<SkImage> image2 = SkImage::MakeFromBitmap(bitmap);
+ sk_sp<SkImage> image2 = bitmap.asImage();
*pixmap.writable_addr8(2, 2) = 0x00;
canvas->scale(10, 10);
canvas->drawImage(image1, 0, 0);
diff --git a/docs/examples/Image_isLazyGenerated_b.cpp b/docs/examples/Image_isLazyGenerated_b.cpp
index 9ee0b0e..e480ce6 100644
--- a/docs/examples/Image_isLazyGenerated_b.cpp
+++ b/docs/examples/Image_isLazyGenerated_b.cpp
@@ -22,7 +22,7 @@
image->isLazyGenerated() ? "is lazily generated" : "not lazily generated",
20, image->height() * 3 / 4, font, paint);
};
- sk_sp<SkImage> bitmapImage(SkImage::MakeFromBitmap(source));
+ sk_sp<SkImage> bitmapImage(source.asImage());
sk_sp<SkImage> textureImage(SkImage::MakeFromTexture(dContext, backEndTexture,
kTopLeft_GrSurfaceOrigin,
kRGBA_8888_SkColorType,
diff --git a/docs/examples/Image_isTextureBacked.cpp b/docs/examples/Image_isTextureBacked.cpp
index 9e5de90..9749168 100644
--- a/docs/examples/Image_isTextureBacked.cpp
+++ b/docs/examples/Image_isTextureBacked.cpp
@@ -21,7 +21,7 @@
canvas->drawString(image->isTextureBacked() ? "is GPU texture" : "not GPU texture",
20, image->height() * 3 / 4, font, paint);
};
- sk_sp<SkImage> bitmapImage(SkImage::MakeFromBitmap(source));
+ sk_sp<SkImage> bitmapImage(source.asImage());
sk_sp<SkImage> textureImage(SkImage::MakeFromTexture(dContext, backEndTexture,
kTopLeft_GrSurfaceOrigin,
kRGBA_8888_SkColorType,
diff --git a/docs/examples/Image_isValid.cpp b/docs/examples/Image_isValid.cpp
index 6333069..128a184 100644
--- a/docs/examples/Image_isValid.cpp
+++ b/docs/examples/Image_isValid.cpp
@@ -28,7 +28,7 @@
canvas->drawString(msg, 20, image->height() * 7 / 8, font, paint);
};
- sk_sp<SkImage> bitmapImage(SkImage::MakeFromBitmap(source));
+ sk_sp<SkImage> bitmapImage(source.asImage());
sk_sp<SkImage> textureImage(SkImage::MakeFromTexture(dContext, backEndTexture,
kTopLeft_GrSurfaceOrigin,
kRGBA_8888_SkColorType,
diff --git a/docs/examples/Image_makeNonTextureImage.cpp b/docs/examples/Image_makeNonTextureImage.cpp
index 13c8a03..c25814a 100644
--- a/docs/examples/Image_makeNonTextureImage.cpp
+++ b/docs/examples/Image_makeNonTextureImage.cpp
@@ -20,7 +20,7 @@
canvas->drawImage(nonTexture, 0, 0);
canvas->drawString(label, 20, nonTexture->height() / 4, font, paint);
};
- sk_sp<SkImage> bitmapImage(SkImage::MakeFromBitmap(source));
+ sk_sp<SkImage> bitmapImage(source.asImage());
sk_sp<SkImage> textureImage(SkImage::MakeFromTexture(dContext, backEndTexture,
kTopLeft_GrSurfaceOrigin,
kRGBA_8888_SkColorType,
diff --git a/docs/examples/Image_makeRasterImage.cpp b/docs/examples/Image_makeRasterImage.cpp
index 238b69a..7c46310 100644
--- a/docs/examples/Image_makeRasterImage.cpp
+++ b/docs/examples/Image_makeRasterImage.cpp
@@ -20,7 +20,7 @@
canvas->drawImage(raster, 0, 0);
canvas->drawString(label, 20, raster->height() / 4, font, paint);
};
- sk_sp<SkImage> bitmapImage(SkImage::MakeFromBitmap(source));
+ sk_sp<SkImage> bitmapImage(source.asImage());
sk_sp<SkImage> textureImage(SkImage::MakeFromTexture(dContext, backEndTexture,
kTopLeft_GrSurfaceOrigin,
kRGBA_8888_SkColorType,
diff --git a/docs/examples/Image_makeTextureImage.cpp b/docs/examples/Image_makeTextureImage.cpp
index a6cd806..0c24b87 100644
--- a/docs/examples/Image_makeTextureImage.cpp
+++ b/docs/examples/Image_makeTextureImage.cpp
@@ -25,7 +25,7 @@
canvas->drawImage(texture, 0, 0);
canvas->drawString(label, 20, texture->height() / 4, font, paint);
};
- sk_sp<SkImage> bitmapImage(SkImage::MakeFromBitmap(source));
+ sk_sp<SkImage> bitmapImage(source.asImage());
sk_sp<SkImage> textureImage(SkImage::MakeFromTexture(dContext, backEndTexture,
diff --git a/docs/examples/Image_refEncodedData.cpp b/docs/examples/Image_refEncodedData.cpp
index 39b1d07..21c0135 100644
--- a/docs/examples/Image_refEncodedData.cpp
+++ b/docs/examples/Image_refEncodedData.cpp
@@ -14,7 +14,7 @@
sk_sp<SkImage> image;
} tests[] = {
{ "image", image },
- { "bitmap", SkImage::MakeFromBitmap(source) },
+ { "bitmap", source.asImage() },
{ "texture", SkImage::MakeFromTexture(dContext, backEndTexture, kTopLeft_GrSurfaceOrigin,
kRGBA_8888_SkColorType, kOpaque_SkAlphaType,
nullptr) }
diff --git a/docs/examples/UnpremulBugs.cpp b/docs/examples/UnpremulBugs.cpp
index 69a249e..845b25b 100644
--- a/docs/examples/UnpremulBugs.cpp
+++ b/docs/examples/UnpremulBugs.cpp
@@ -15,7 +15,7 @@
SkBitmap bmp;
bmp.allocPixels(info);
fill(bmp, c, n);
- sk_sp<SkImage> img = SkImage::MakeFromBitmap(bmp);
+ sk_sp<SkImage> img = bmp.asImage();
SkPaint paint;
const SkTileMode tile = SkTileMode::kRepeat;
diff --git a/docs/examples/UnpremulGPU.cpp b/docs/examples/UnpremulGPU.cpp
index 6908211..0e48a8b 100644
--- a/docs/examples/UnpremulGPU.cpp
+++ b/docs/examples/UnpremulGPU.cpp
@@ -12,7 +12,7 @@
*(premulBitmap.getAddr32(x, y)) = 0x80808080;
}
}
- sk_sp<SkImage> premulImage = SkImage::MakeFromBitmap(premulBitmap);
+ sk_sp<SkImage> premulImage = premulBitmap.asImage();
SkImageInfo unpremulInfo = premulInfo.makeAlphaType(kUnpremul_SkAlphaType);
SkBitmap unpremulBitmap;
@@ -22,7 +22,7 @@
*(unpremulBitmap.getAddr32(x, y)) = 0x80FFFFFF;
}
}
- sk_sp<SkImage> unpremulImage = SkImage::MakeFromBitmap(unpremulBitmap);
+ sk_sp<SkImage> unpremulImage = unpremulBitmap.asImage();
SkPaint paint;
const SkTileMode tile = SkTileMode::kRepeat;
diff --git a/docs/examples/alpha_bitmap_color_filter_mask_filter.cpp b/docs/examples/alpha_bitmap_color_filter_mask_filter.cpp
index 4af0645..45ccd76 100644
--- a/docs/examples/alpha_bitmap_color_filter_mask_filter.cpp
+++ b/docs/examples/alpha_bitmap_color_filter_mask_filter.cpp
@@ -25,7 +25,7 @@
}
void draw(SkCanvas* canvas) {
- auto image = SkImage::MakeFromBitmap(make_alpha_image(96, 96));
+ auto image = make_alpha_image(96, 96).asImage();
SkPaint paint;
paint.setColorFilter(make_color_filter());
diff --git a/docs/examples/blur_alpha_img.cpp b/docs/examples/blur_alpha_img.cpp
index 2d00ace..d60de63 100644
--- a/docs/examples/blur_alpha_img.cpp
+++ b/docs/examples/blur_alpha_img.cpp
@@ -23,7 +23,7 @@
SkCanvas c(bm);
c.clear(0);
c.drawRect(bounds, paint);
- return SkImage::MakeFromBitmap(bm);
+ return bm.asImage();
}
void draw(SkCanvas* canvas) {
diff --git a/docs/examples/skbug_5648.cpp b/docs/examples/skbug_5648.cpp
index d298469..c577467 100644
--- a/docs/examples/skbug_5648.cpp
+++ b/docs/examples/skbug_5648.cpp
@@ -6,8 +6,8 @@
void draw(SkCanvas*) {
SkBitmap bitmap;
source.extractSubset(&bitmap, {0, 0, source.width() - 1, source.height() - 1});
- auto img0 = SkImage::MakeFromBitmap(bitmap);
- auto img1 = SkImage::MakeFromBitmap(bitmap);
+ auto img0 = bitmap.asImage();
+ auto img1 = bitmap.asImage();
SkDebugf("%u\n%u\n", img0->uniqueID(), img1->uniqueID());
}
} // END FIDDLE
diff --git a/fuzz/FuzzDrawFunctions.cpp b/fuzz/FuzzDrawFunctions.cpp
index fb1d89c..30fdbf8 100644
--- a/fuzz/FuzzDrawFunctions.cpp
+++ b/fuzz/FuzzDrawFunctions.cpp
@@ -271,7 +271,7 @@
SkBitmap bmp;
init_bitmap(fuzz, &bmp);
- sk_sp<SkImage> image(SkImage::MakeFromBitmap(bmp));
+ sk_sp<SkImage> image(bmp.asImage());
bool bl;
fuzz->next(&bl);
diff --git a/include/core/SkImage.h b/include/core/SkImage.h
index bb3f77a..060f58b 100644
--- a/include/core/SkImage.h
+++ b/include/core/SkImage.h
@@ -1224,6 +1224,8 @@
private:
SkImage(const SkImageInfo& info, uint32_t uniqueID);
+
+ friend class SkBitmap;
friend class SkImage_Base;
friend class SkMipmapBuilder;
diff --git a/modules/skresources/src/SkResources.cpp b/modules/skresources/src/SkResources.cpp
index ac06a12..29e8b45 100644
--- a/modules/skresources/src/SkResources.cpp
+++ b/modules/skresources/src/SkResources.cpp
@@ -141,7 +141,7 @@
SkSamplingOptions(SkFilterMode::kLinear,
SkMipmapMode::kNearest),
SkImage::kDisallow_CachingHint)) {
- image = SkImage::MakeFromBitmap(bm);
+ image = bm.asImage();
}
} else {
// When the image size is OK, just force-decode.
diff --git a/samplecode/SampleFilterBounds.cpp b/samplecode/SampleFilterBounds.cpp
index a0bda08..4aa2e6f 100644
--- a/samplecode/SampleFilterBounds.cpp
+++ b/samplecode/SampleFilterBounds.cpp
@@ -169,8 +169,8 @@
void onOnceBeforeDraw() override {
fBlur = SkImageFilters::Blur(8.f, 8.f, nullptr);
- fImage = SkImage::MakeFromBitmap(ToolUtils::create_checkerboard_bitmap(
- 300, 300, SK_ColorMAGENTA, SK_ColorLTGRAY, 50));
+ fImage = ToolUtils::create_checkerboard_image(
+ 300, 300, SK_ColorMAGENTA, SK_ColorLTGRAY, 50);
}
void onDrawContent(SkCanvas* canvas) override {
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
index aecd2b9..d89841e 100644
--- a/src/core/SkCanvas.cpp
+++ b/src/core/SkCanvas.cpp
@@ -1943,7 +1943,7 @@
if (bitmap.drawsNothing()) {
return nullptr;
}
- return SkImage::MakeFromBitmap(bitmap);
+ return bitmap.asImage();
}
void SkCanvas::drawBitmap(const SkBitmap& bitmap, SkScalar dx, SkScalar dy, const SkPaint* paint) {
diff --git a/src/core/SkPixmap.cpp b/src/core/SkPixmap.cpp
index 48cec5c..5399991 100644
--- a/src/core/SkPixmap.cpp
+++ b/src/core/SkPixmap.cpp
@@ -238,7 +238,7 @@
SkRect::Make(dst.bounds()),
SkMatrix::kFill_ScaleToFit);
- sk_sp<SkShader> shader = SkImageShader::Make(SkImage::MakeFromBitmap(bitmap),
+ sk_sp<SkShader> shader = SkImageShader::Make(bitmap.asImage(),
SkTileMode::kClamp,
SkTileMode::kClamp,
&sampling,
diff --git a/src/core/SkSpecialImage.cpp b/src/core/SkSpecialImage.cpp
index 4f94d8e..682dbf4 100644
--- a/src/core/SkSpecialImage.cpp
+++ b/src/core/SkSpecialImage.cpp
@@ -239,10 +239,10 @@
return nullptr;
}
- return SkImage::MakeFromBitmap(subsetBM);
+ return subsetBM.asImage();
}
- return SkImage::MakeFromBitmap(fBitmap);
+ return fBitmap.asImage();
}
sk_sp<SkSurface> onMakeTightSurface(SkColorType colorType, const SkColorSpace* colorSpace,
diff --git a/src/image/SkImage_Lazy.cpp b/src/image/SkImage_Lazy.cpp
index 9cca6a3..ab1d66e 100644
--- a/src/image/SkImage_Lazy.cpp
+++ b/src/image/SkImage_Lazy.cpp
@@ -244,7 +244,7 @@
pixmap.setColorSpace(this->refColorSpace());
if (ScopedGenerator(fSharedGenerator)->getPixels(pixmap)) {
bitmap.setImmutable();
- return SkImage::MakeFromBitmap(bitmap);
+ return bitmap.asImage();
}
}
return nullptr;
diff --git a/src/image/SkImage_Raster.cpp b/src/image/SkImage_Raster.cpp
index e4b3688..582138b 100644
--- a/src/image/SkImage_Raster.cpp
+++ b/src/image/SkImage_Raster.cpp
@@ -267,7 +267,7 @@
subset.height());
bitmap.setImmutable();
- return MakeFromBitmap(bitmap);
+ return bitmap.asImage();
}
///////////////////////////////////////////////////////////////////////////////
@@ -399,7 +399,7 @@
SkAssertResult(dst.writePixels(src));
dst.setImmutable();
- return SkImage::MakeFromBitmap(dst);
+ return dst.asImage();
}
sk_sp<SkImage> SkImage_Raster::onReinterpretColorSpace(sk_sp<SkColorSpace> newCS) const {
diff --git a/src/image/SkSurface_Raster.cpp b/src/image/SkSurface_Raster.cpp
index 4131dfd..77ebedb 100644
--- a/src/image/SkSurface_Raster.cpp
+++ b/src/image/SkSurface_Raster.cpp
@@ -94,7 +94,7 @@
dst.allocPixels(fBitmap.info().makeDimensions(subset->size()));
SkAssertResult(fBitmap.readPixels(dst.pixmap(), subset->left(), subset->top()));
dst.setImmutable(); // key, so MakeFromBitmap doesn't make a copy of the buffer
- return SkImage::MakeFromBitmap(dst);
+ return dst.asImage();
}
SkCopyPixelsMode cpm = kIfMutable_SkCopyPixelsMode;
diff --git a/src/pdf/SkKeyedImage.cpp b/src/pdf/SkKeyedImage.cpp
index ce59da7..7b733d0 100644
--- a/src/pdf/SkKeyedImage.cpp
+++ b/src/pdf/SkKeyedImage.cpp
@@ -24,7 +24,7 @@
fKey = SkBitmapKeyFromImage(fImage.get());
}
-SkKeyedImage::SkKeyedImage(const SkBitmap& bm) : fImage(SkImage::MakeFromBitmap(bm)) {
+SkKeyedImage::SkKeyedImage(const SkBitmap& bm) : fImage(bm.asImage()) {
if (fImage) {
fKey = {bm.getSubset(), bm.getGenerationID()};
}
diff --git a/src/pdf/SkPDFDevice.cpp b/src/pdf/SkPDFDevice.cpp
index 726e0ed..42ed89c 100644
--- a/src/pdf/SkPDFDevice.cpp
+++ b/src/pdf/SkPDFDevice.cpp
@@ -136,7 +136,8 @@
greyBitmap.getPixels(), greyBitmap.rowBytes(), 0, 0)) {
return nullptr;
}
- return SkImage::MakeFromBitmap(greyBitmap);
+ greyBitmap.setImmutable();
+ return greyBitmap.asImage();
}
static int add_resource(SkTHashSet<SkPDFIndirectReference>& resources, SkPDFIndirectReference ref) {
diff --git a/src/pdf/SkPDFFont.cpp b/src/pdf/SkPDFFont.cpp
index e5ec7ee..be70078 100644
--- a/src/pdf/SkPDFFont.cpp
+++ b/src/pdf/SkPDFFont.cpp
@@ -462,7 +462,7 @@
}
}
bm.setImmutable();
- return {SkImage::MakeFromBitmap(bm), {bounds.x(), bounds.y()}};
+ return {bm.asImage(), {bounds.x(), bounds.y()}};
case SkMask::kA8_Format:
bm.installPixels(SkImageInfo::MakeA8(bounds.width(), bounds.height()),
mask.fImage, mask.fRowBytes);
diff --git a/src/utils/mac/SkCreateCGImageRef.cpp b/src/utils/mac/SkCreateCGImageRef.cpp
index 74e9ce2..e69dbea 100644
--- a/src/utils/mac/SkCreateCGImageRef.cpp
+++ b/src/utils/mac/SkCreateCGImageRef.cpp
@@ -247,7 +247,7 @@
}
bm.setImmutable();
- return SkImage::MakeFromBitmap(bm);
+ return bm.asImage();
}
#endif//defined(SK_BUILD_FOR_MAC) || defined(SK_BUILD_FOR_IOS)
diff --git a/tests/DeviceTest.cpp b/tests/DeviceTest.cpp
index 60b7ff3..0557ff6 100644
--- a/tests/DeviceTest.cpp
+++ b/tests/DeviceTest.cpp
@@ -101,7 +101,7 @@
SkASSERT(SkIRect::MakeWH(kWidth, kHeight) == special->subset());
// Create a gpu-backed special image from a raster-backed SkImage
- sk_sp<SkImage> image(SkImage::MakeFromBitmap(bm));
+ sk_sp<SkImage> image(bm.asImage());
special = DeviceTestingAccess::MakeSpecial(gpuDev.get(), image.get());
SkASSERT(special->isTextureBacked());
SkASSERT(kWidth == special->width());
diff --git a/tests/FlattenableFactoryToName.cpp b/tests/FlattenableFactoryToName.cpp
index 07f2263..45b0fbd 100644
--- a/tests/FlattenableFactoryToName.cpp
+++ b/tests/FlattenableFactoryToName.cpp
@@ -37,6 +37,6 @@
SkBitmap bm;
bm.allocN32Pixels(8, 8);
bm.eraseColor(SK_ColorCYAN);
- sk_sp<SkImage> image(SkImage::MakeFromBitmap(bm));
+ sk_sp<SkImage> image(bm.asImage());
test_flattenable(r, image->makeShader(SkSamplingOptions()).get(), "SkImage::newShader()");
}
diff --git a/tests/GrDDLImageTest.cpp b/tests/GrDDLImageTest.cpp
index effcb96..b26ee5b 100644
--- a/tests/GrDDLImageTest.cpp
+++ b/tests/GrDDLImageTest.cpp
@@ -28,7 +28,7 @@
bm.allocPixels();
bm.eraseColor(SK_ColorBLACK);
bm.setImmutable();
- auto rasterImg = SkImage::MakeFromBitmap(bm);
+ auto rasterImg = bm.asImage();
REPORTER_ASSERT(reporter, rasterImg->isValid(static_cast<GrRecordingContext*>(nullptr)));
// raster + context:
diff --git a/tests/GrMipMappedTest.cpp b/tests/GrMipMappedTest.cpp
index 939517b..7c1b033 100644
--- a/tests/GrMipMappedTest.cpp
+++ b/tests/GrMipMappedTest.cpp
@@ -329,7 +329,7 @@
SkPMColor* pixel = reinterpret_cast<SkPMColor*>(bmp.getPixels());
*pixel = 0;
- sk_sp<SkImage> bmpImage = SkImage::MakeFromBitmap(bmp);
+ sk_sp<SkImage> bmpImage = bmp.asImage();
// Make sure we scale so we don't optimize out the use of mips.
surface->getCanvas()->scale(0.5f, 0.5f);
diff --git a/tests/ImageBitmapTest.cpp b/tests/ImageBitmapTest.cpp
index 38053e3..4295bed 100644
--- a/tests/ImageBitmapTest.cpp
+++ b/tests/ImageBitmapTest.cpp
@@ -22,9 +22,9 @@
(void)bm.extractSubset(&a, SkIRect::MakeXYWH(0, 0, 32, 32));
(void)bm.extractSubset(&b, SkIRect::MakeXYWH(0, 32, 32, 32));
REPORTER_ASSERT(r, a.getGenerationID() == b.getGenerationID());
- auto img = SkImage::MakeFromBitmap(bm);
- auto imgA = SkImage::MakeFromBitmap(a);
- auto imgB = SkImage::MakeFromBitmap(b);
+ auto img = bm.asImage();
+ auto imgA = a.asImage();
+ auto imgB = b.asImage();
REPORTER_ASSERT(r, img->uniqueID() == bm.getGenerationID());
REPORTER_ASSERT(r, img->uniqueID() != imgA->uniqueID());
REPORTER_ASSERT(r, img->uniqueID() != imgB->uniqueID());
diff --git a/tests/ImageFilterCacheTest.cpp b/tests/ImageFilterCacheTest.cpp
index 6f7cb64..92e7771 100644
--- a/tests/ImageFilterCacheTest.cpp
+++ b/tests/ImageFilterCacheTest.cpp
@@ -193,7 +193,7 @@
DEF_TEST(ImageFilterCache_ImageBackedRaster, reporter) {
SkBitmap srcBM = create_bm();
- sk_sp<SkImage> srcImage(SkImage::MakeFromBitmap(srcBM));
+ sk_sp<SkImage> srcImage(srcBM.asImage());
test_image_backed(reporter, nullptr, srcImage);
}
diff --git a/tests/ImageFilterTest.cpp b/tests/ImageFilterTest.cpp
index c40fb09..812bcca 100644
--- a/tests/ImageFilterTest.cpp
+++ b/tests/ImageFilterTest.cpp
@@ -124,7 +124,7 @@
SkImageFilters::ColorFilter(std::move(cf), input, cropRect));
}
{
- sk_sp<SkImage> gradientImage(SkImage::MakeFromBitmap(make_gradient_circle(64, 64)));
+ sk_sp<SkImage> gradientImage(make_gradient_circle(64, 64).asImage());
sk_sp<SkImageFilter> gradientSource(SkImageFilters::Image(std::move(gradientImage)));
this->addFilter("displacement map",
@@ -515,7 +515,7 @@
sk_sp<SkImageFilter> positiveFilter(SkImageFilters::Blur(kBlurSigma, kBlurSigma, nullptr));
sk_sp<SkImageFilter> negativeFilter(SkImageFilters::Blur(-kBlurSigma, kBlurSigma, nullptr));
- sk_sp<SkImage> gradient = SkImage::MakeFromBitmap(make_gradient_circle(kWidth, kHeight));
+ sk_sp<SkImage> gradient = make_gradient_circle(kWidth, kHeight).asImage();
sk_sp<SkSpecialImage> imgSrc(
SkSpecialImage::MakeFromImage(dContext, SkIRect::MakeWH(kWidth, kHeight), gradient));
@@ -607,7 +607,7 @@
paint.setColor(SK_ColorWHITE);
canvas.drawRect(SkRect::MakeXYWH(kWidth / 4, kHeight / 4, kWidth / 2, kHeight / 2),
paint);
- sk_sp<SkImage> image = SkImage::MakeFromBitmap(bitmap);
+ sk_sp<SkImage> image = bitmap.asImage();
sk_sp<SkSpecialImage> imgSrc(
SkSpecialImage::MakeFromImage(dContext, SkIRect::MakeWH(kWidth, kHeight), image));
@@ -1002,7 +1002,7 @@
SkBitmap greenBM;
greenBM.allocN32Pixels(20, 20);
greenBM.eraseColor(SK_ColorGREEN);
- sk_sp<SkImage> greenImage(SkImage::MakeFromBitmap(greenBM));
+ sk_sp<SkImage> greenImage(greenBM.asImage());
sk_sp<SkImageFilter> source(SkImageFilters::Image(std::move(greenImage)));
sk_sp<SkImageFilter> merge(SkImageFilters::Merge(source, source));
@@ -1637,7 +1637,7 @@
return;
}
- sk_sp<SkImage> largeImage(SkImage::MakeFromBitmap(largeBmp));
+ sk_sp<SkImage> largeImage(largeBmp.asImage());
if (!largeImage) {
ERRORF(reporter, "Failed to create large image.");
return;
@@ -1954,7 +1954,7 @@
// Test SkImageSource::filterBounds.
DEF_TEST(ImageSourceBounds, reporter) {
- sk_sp<SkImage> image(SkImage::MakeFromBitmap(make_gradient_circle(64, 64)));
+ sk_sp<SkImage> image(make_gradient_circle(64, 64).asImage());
// Default src and dst rects.
sk_sp<SkImageFilter> source1(SkImageFilters::Image(image));
SkIRect imageBounds = SkIRect::MakeWH(64, 64);
diff --git a/tests/ImageFrom565Bitmap.cpp b/tests/ImageFrom565Bitmap.cpp
index 037010e..3349aa8 100644
--- a/tests/ImageFrom565Bitmap.cpp
+++ b/tests/ImageFrom565Bitmap.cpp
@@ -15,5 +15,5 @@
bm.allocPixels(SkImageInfo::Make(
5, 7, kRGB_565_SkColorType, kOpaque_SkAlphaType));
bm.eraseColor(SK_ColorBLACK);
- REPORTER_ASSERT(r, SkImage::MakeFromBitmap(bm) != nullptr);
+ REPORTER_ASSERT(r, bm.asImage() != nullptr);
}
diff --git a/tests/ImageTest.cpp b/tests/ImageTest.cpp
index 57ce3fe..7bdf8dd6 100644
--- a/tests/ImageTest.cpp
+++ b/tests/ImageTest.cpp
@@ -314,7 +314,7 @@
SkBitmap bm;
rec[i].fMakeProc(&bm);
- sk_sp<SkImage> image(SkImage::MakeFromBitmap(bm));
+ sk_sp<SkImage> image(bm.asImage());
SkPixmap pmap;
const bool sharedID = (image->uniqueID() == bm.getGenerationID());
@@ -511,7 +511,7 @@
}
}
auto dContext = ctxInfo.directContext();
- auto texImage = SkImage::MakeFromBitmap(bmp)->makeTextureImage(dContext);
+ auto texImage = bmp.asImage()->makeTextureImage(dContext);
if (!texImage || texImage->alphaType() != kUnpremul_SkAlphaType) {
ERRORF(reporter, "Failed to make unpremul texture image.");
return;
@@ -746,7 +746,7 @@
SkBitmap tmp;
REPORTER_ASSERT(reporter, bitmap.extractSubset(&tmp, SkIRect::MakeWH(image->width() / 2,
image->height() / 2)));
- sk_sp<SkImage> subsetImage(SkImage::MakeFromBitmap(tmp));
+ sk_sp<SkImage> subsetImage(tmp.asImage());
REPORTER_ASSERT(reporter, subsetImage.get());
SkBitmap subsetBitmap;
@@ -1169,7 +1169,7 @@
SkBitmap bitmap;
SkImageInfo info = SkImageInfo::MakeN32(10, 10, kPremul_SkAlphaType, rec2020);
bitmap.allocPixels(info);
- image = SkImage::MakeFromBitmap(bitmap);
+ image = bitmap.asImage();
REPORTER_ASSERT(r, SkColorSpace::Equals(rec2020.get(), image->colorSpace()));
sk_sp<SkSurface> surface = SkSurface::MakeRaster(
@@ -1192,7 +1192,7 @@
srgbBitmap.allocPixels(SkImageInfo::MakeS32(1, 1, kOpaque_SkAlphaType));
*srgbBitmap.getAddr32(0, 0) = SkSwizzle_RGBA_to_PMColor(0xFF604020);
srgbBitmap.setImmutable();
- sk_sp<SkImage> srgbImage = SkImage::MakeFromBitmap(srgbBitmap);
+ sk_sp<SkImage> srgbImage = srgbBitmap.asImage();
sk_sp<SkImage> p3Image = srgbImage->makeColorSpace(p3, nullptr);
SkBitmap p3Bitmap;
bool success = p3Image->asLegacyBitmap(&p3Bitmap);
@@ -1253,7 +1253,7 @@
SkBitmap bm0;
make_all_premul(&bm0);
- auto img0 = SkImage::MakeFromBitmap(bm0);
+ auto img0 = bm0.asImage();
sk_sp<SkData> data = img0->encodeToData(SkEncodedImageFormat::kPNG, 100);
auto img1 = SkImage::MakeFromEncoded(data);
diff --git a/tests/RepeatedClippedBlurTest.cpp b/tests/RepeatedClippedBlurTest.cpp
index fde8bbd..81bfc33 100644
--- a/tests/RepeatedClippedBlurTest.cpp
+++ b/tests/RepeatedClippedBlurTest.cpp
@@ -53,7 +53,7 @@
bm.eraseColor(SK_ColorRED);
bm.eraseArea(SkIRect::MakeXYWH(1, 2, 1277, 1274), SK_ColorGREEN);
- sk_sp<SkImage> rasterImg = SkImage::MakeFromBitmap(bm);
+ sk_sp<SkImage> rasterImg = bm.asImage();
bigImg = rasterImg->makeTextureImage(dContext);
}
diff --git a/tests/SerializationTest.cpp b/tests/SerializationTest.cpp
index 5a58f6d..e13d3eb 100644
--- a/tests/SerializationTest.cpp
+++ b/tests/SerializationTest.cpp
@@ -271,9 +271,9 @@
const SkBitmap& invalidBitmap,
bool shouldSucceed,
skiatest::Reporter* reporter) {
- sk_sp<SkImage> validImage(SkImage::MakeFromBitmap(validBitmap));
+ sk_sp<SkImage> validImage(validBitmap.asImage());
sk_sp<SkImageFilter> validBitmapSource(SkImageFilters::Image(std::move(validImage)));
- sk_sp<SkImage> invalidImage(SkImage::MakeFromBitmap(invalidBitmap));
+ sk_sp<SkImage> invalidImage(invalidBitmap.asImage());
sk_sp<SkImageFilter> invalidBitmapSource(SkImageFilters::Image(std::move(invalidImage)));
sk_sp<SkImageFilter> xfermodeImageFilter(
SkImageFilters::Blend(SkBlendMode::kSrcOver,
diff --git a/tests/ShaderTest.cpp b/tests/ShaderTest.cpp
index 09111de..8189b48 100644
--- a/tests/ShaderTest.cpp
+++ b/tests/ShaderTest.cpp
@@ -40,13 +40,13 @@
const int H = 100;
SkBitmap bm;
bm.allocN32Pixels(W, H);
- auto img = SkImage::MakeFromBitmap(bm);
+ auto img = bm.asImage();
const SkMatrix localM = SkMatrix::Scale(2, 3);
const SkTileMode tmx = SkTileMode::kRepeat;
const SkTileMode tmy = SkTileMode::kMirror;
auto shader0 = bm.makeShader(tmx, tmy, SkSamplingOptions(), localM);
- auto shader1 = SkImage::MakeFromBitmap(bm)->makeShader(tmx, tmy, SkSamplingOptions(), localM);
+ auto shader1 = bm.asImage()->makeShader(tmx, tmy, SkSamplingOptions(), localM);
check_isaimage(reporter, shader0.get(), W, H, tmx, tmy, localM);
check_isaimage(reporter, shader1.get(), W, H, tmx, tmy, localM);
diff --git a/tests/SkImageTest.cpp b/tests/SkImageTest.cpp
index 63ebef5..bbbcdfd 100644
--- a/tests/SkImageTest.cpp
+++ b/tests/SkImageTest.cpp
@@ -27,7 +27,7 @@
canvas.drawIRect(r, p);
SkBitmap dstBitmap;
srcBitmap.extractSubset(&dstBitmap, r);
- image = SkImage::MakeFromBitmap(dstBitmap);
+ image = dstBitmap.asImage();
}
SkBitmap tgt;
diff --git a/tests/SkResourceCacheTest.cpp b/tests/SkResourceCacheTest.cpp
index 89339cd..175abe1 100644
--- a/tests/SkResourceCacheTest.cpp
+++ b/tests/SkResourceCacheTest.cpp
@@ -43,7 +43,7 @@
SkBitmap src;
src.allocN32Pixels(5, 5);
src.setImmutable();
- sk_sp<SkImage> img = SkImage::MakeFromBitmap(src);
+ sk_sp<SkImage> img = src.asImage();
const auto desc = SkBitmapCacheDesc::Make(img.get());
const SkMipmap* mipmap = SkMipmapCache::FindAndRef(desc, cache);
@@ -85,7 +85,7 @@
for (int i = 0; i < N; ++i) {
src[i].allocN32Pixels(5, 5);
src[i].setImmutable();
- img[i] = SkImage::MakeFromBitmap(src[i]);
+ img[i] = src[i].asImage();
SkMipmapCache::AddAndRef(as_IB(img[i].get()), cache)->unref();
desc[i] = SkBitmapCacheDesc::Make(img[i].get());
}
diff --git a/tests/SpecialImageTest.cpp b/tests/SpecialImageTest.cpp
index 0bc1518..2e08a39 100644
--- a/tests/SpecialImageTest.cpp
+++ b/tests/SpecialImageTest.cpp
@@ -159,7 +159,7 @@
static void test_specialimage_image(skiatest::Reporter* reporter) {
SkBitmap bm = create_bm();
- sk_sp<SkImage> fullImage(SkImage::MakeFromBitmap(bm));
+ sk_sp<SkImage> fullImage(bm.asImage());
sk_sp<SkSpecialImage> fullSImage(SkSpecialImage::MakeFromImage(
nullptr,
diff --git a/tests/TextureProxyTest.cpp b/tests/TextureProxyTest.cpp
index 1cece0a..affb584 100644
--- a/tests/TextureProxyTest.cpp
+++ b/tests/TextureProxyTest.cpp
@@ -229,7 +229,7 @@
SkBitmap bm;
bm.allocPixels(ii);
- rasterImg = SkImage::MakeFromBitmap(bm);
+ rasterImg = bm.asImage();
REPORTER_ASSERT(reporter, 0 == proxyProvider->numUniqueKeyProxies_TestOnly());
REPORTER_ASSERT(reporter, 0 == cache->getResourceCount());
}
diff --git a/tools/DDLPromiseImageHelper.cpp b/tools/DDLPromiseImageHelper.cpp
index 09962b5..49c42ee 100644
--- a/tools/DDLPromiseImageHelper.cpp
+++ b/tools/DDLPromiseImageHelper.cpp
@@ -315,7 +315,7 @@
// texture wouldn't fit on the GPU. Create a separate bitmap-backed image for each thread.
if (!curImage.isYUV() && !curImage.callbackContext(0)) {
SkASSERT(curImage.baseLevel().isImmutable());
- return SkImage::MakeFromBitmap(curImage.baseLevel());
+ return curImage.baseLevel().asImage();
}
SkASSERT(curImage.index() == *indexPtr);
diff --git a/tools/SkSharingProc.cpp b/tools/SkSharingProc.cpp
index 78a1d6b..ecd6b8e 100644
--- a/tools/SkSharingProc.cpp
+++ b/tools/SkSharingProc.cpp
@@ -35,7 +35,7 @@
// Return something so the rest of the debugger can proceeed.
SkBitmap bm;
bm.allocPixels(SkImageInfo::MakeN32Premul(1, 1));
- return SkImage::MakeFromBitmap(bm);
+ return bm.asImage();
}
SkSharingDeserialContext* context = reinterpret_cast<SkSharingDeserialContext*>(ctx);
uint32_t fid;
diff --git a/tools/debugger/DrawCommand.cpp b/tools/debugger/DrawCommand.cpp
index 101b791..c3be6bd 100644
--- a/tools/debugger/DrawCommand.cpp
+++ b/tools/debugger/DrawCommand.cpp
@@ -721,7 +721,7 @@
bool DrawCommand::flatten(const SkBitmap& bitmap,
SkJSONWriter& writer,
UrlDataManager& urlDataManager) {
- sk_sp<SkImage> image(SkImage::MakeFromBitmap(bitmap));
+ sk_sp<SkImage> image(bitmap.asImage());
writer.appendString(DEBUGCANVAS_ATTRIBUTE_COLOR, color_type_name(bitmap.colorType()));
writer.appendString(DEBUGCANVAS_ATTRIBUTE_ALPHA, alpha_type_name(bitmap.alphaType()));
// Image will appear to have no uses, TODO(nifong): provide the user with a useful explanation