diff options
author | 2016-12-07 16:37:43 +0000 | |
---|---|---|
committer | 2016-12-07 16:50:32 +0000 | |
commit | b88ca7eca40c39d5a4027a93d9a409ce698cc370 (patch) | |
tree | dc720336331b48731dc8793ef59ece27942f5373 /include/core | |
parent | 92964124c5ff61729357a51dc212ca5938093e89 (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.h | 5 | ||||
-rw-r--r-- | include/core/SkImageEncoder.h | 32 |
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 |