aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/core
diff options
context:
space:
mode:
authorGravatar Hal Canary <halcanary@google.com>2016-12-07 16:37:43 +0000
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2016-12-07 16:50:32 +0000
commitb88ca7eca40c39d5a4027a93d9a409ce698cc370 (patch)
treedc720336331b48731dc8793ef59ece27942f5373 /include/core
parent92964124c5ff61729357a51dc212ca5938093e89 (diff)
Revert "SkImageEncoder::* going away"
This reverts commit d7e16661bb36924b2c8f717c527b876dabb595f3. Reason for revert: breaking g3 NOTRY=true Change-Id: I56d53adca64a94b4f66dd0539634804a96e92ddf Reviewed-on: https://skia-review.googlesource.com/5672 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Hal Canary <halcanary@google.com> Reviewed-by: Herb Derby <herb@google.com>
Diffstat (limited to 'include/core')
-rw-r--r--include/core/SkImage.h5
-rw-r--r--include/core/SkImageEncoder.h32
2 files changed, 37 insertions, 0 deletions
diff --git a/include/core/SkImage.h b/include/core/SkImage.h
index 8c73eebb15..625d0a0b63 100644
--- a/include/core/SkImage.h
+++ b/include/core/SkImage.h
@@ -276,6 +276,11 @@ public:
* even if the image returns a data from refEncoded(). That data will be ignored.
*/
SkData* encode(SkEncodedImageFormat, int quality) const;
+#ifdef SK_SUPPORT_LEGACY_IMAGE_ENCODER_CLASS
+ SkData* encode(SkImageEncoder::Type t, int quality) const {
+ return this->encode((SkEncodedImageFormat)t, quality);
+ }
+#endif
/**
* Encode the image and return the result as a caller-managed SkData. This will
diff --git a/include/core/SkImageEncoder.h b/include/core/SkImageEncoder.h
index e4f746ab96..17d0603531 100644
--- a/include/core/SkImageEncoder.h
+++ b/include/core/SkImageEncoder.h
@@ -39,4 +39,36 @@ inline bool SkEncodeImage(SkWStream* dst, const SkBitmap& src, SkEncodedImageFor
return src.peekPixels(&pixmap) && SkEncodeImage(dst, pixmap, f, q);
}
+//TODO(halcanary): remove this code once all changes land.
+#ifdef SK_SUPPORT_LEGACY_IMAGE_ENCODER_CLASS
+class SkImageEncoder {
+public:
+ enum Type {
+#ifdef GOOGLE3
+ kUnknown_Type = (int)SkEncodedImageFormat::kUnknown,
+#endif
+ kBMP_Type = (int)SkEncodedImageFormat::kBMP,
+ kGIF_Type = (int)SkEncodedImageFormat::kGIF,
+ kICO_Type = (int)SkEncodedImageFormat::kICO,
+ kJPEG_Type = (int)SkEncodedImageFormat::kJPEG,
+ kPNG_Type = (int)SkEncodedImageFormat::kPNG,
+ kWBMP_Type = (int)SkEncodedImageFormat::kWBMP,
+ kWEBP_Type = (int)SkEncodedImageFormat::kWEBP,
+ kKTX_Type = (int)SkEncodedImageFormat::kKTX,
+ };
+ static SkData* EncodeData(const SkBitmap& src, Type t, int quality) {
+ SkDynamicMemoryWStream buf;
+ return SkEncodeImage(&buf, src, (SkEncodedImageFormat)t, quality)
+ ? buf.detachAsData().release() : nullptr;
+ }
+ static bool EncodeFile(const char path[], const SkBitmap& src, Type t, int quality) {
+ SkFILEWStream file(path);
+ return SkEncodeImage(&file, src, (SkEncodedImageFormat)t, quality);
+ }
+ static bool EncodeStream(SkWStream* dst, const SkBitmap& bm, Type t, int quality) {
+ return SkEncodeImage(dst, bm, (SkEncodedImageFormat)t, quality);
+ }
+};
+#endif // SK_SUPPORT_LEGACY_IMAGE_ENCODER_CLASS
+
#endif // SkImageEncoder_DEFINED