Remove uses SkImageDecoder in imgblur and imgslice
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1777753002
Review URL: https://codereview.chromium.org/1777753002
diff --git a/tools/imgblur.cpp b/tools/imgblur.cpp
index 5ee8b12..4f106dc 100644
--- a/tools/imgblur.cpp
+++ b/tools/imgblur.cpp
@@ -5,14 +5,19 @@
* found in the LICENSE file.
*/
+#include "SkBitmap.h"
#include "SkCommandLineFlags.h"
#include "SkCommonFlags.h"
-#include "SkImageDecoder.h"
+#include "SkData.h"
+#include "SkForceLinking.h"
+#include "SkImage.h"
#include "SkStream.h"
#include "SkTypes.h"
#include "sk_tool_utils.h"
+__SK_FORCE_IMAGE_DECODER_LINKING;
+
DEFINE_string(in, "input.png", "Input image");
DEFINE_string(out, "blurred.png", "Output image");
DEFINE_double(sigma, 1, "Sigma to be used for blur (> 0.0f)");
@@ -35,32 +40,27 @@
return kError;
}
- SkFILEStream inputStream(FLAGS_in[0]);
- if (!inputStream.isValid()) {
+ SkAutoTUnref<SkData> data(SkData::NewFromFileName(FLAGS_in[0]));
+ if (nullptr == data) {
if (!FLAGS_quiet) {
SkDebugf("Couldn't open file: %s\n", FLAGS_in[0]);
}
return kError;
}
- SkAutoTDelete<SkImageDecoder> codec(SkImageDecoder::Factory(&inputStream));
- if (!codec) {
+ SkAutoTDelete<SkImage> image(SkImage::NewFromEncoded(data));
+ if (!image) {
if (!FLAGS_quiet) {
- SkDebugf("Couldn't create codec for: %s.\n", FLAGS_in[0]);
+ SkDebugf("Couldn't create image for: %s.\n", FLAGS_in[0]);
}
return kError;
}
SkBitmap src;
-
- inputStream.rewind();
- SkImageDecoder::Result res = codec->decode(&inputStream, &src,
- kN32_SkColorType,
- SkImageDecoder::kDecodePixels_Mode);
- if (SkImageDecoder::kSuccess != res) {
+ if (!image->asLegacyBitmap(&src, SkImage::kRW_LegacyBitmapMode)) {
if (!FLAGS_quiet) {
- SkDebugf("Couldn't decode image: %s.\n", FLAGS_in[0]);
- }
+ SkDebugf("Couldn't create bitmap for: %s.\n", FLAGS_in[0]);
+ }
return kError;
}