diff options
author | Mike Reed <reed@google.com> | 2016-12-21 12:01:12 -0500 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2016-12-21 17:38:18 +0000 |
commit | 463c848f3b63b52e3834e405ff11fd1e653ed271 (patch) | |
tree | 7b1b0e7f829f1f3d838f3c42307e6eed2ed3c6d0 /tools/Resources.cpp | |
parent | bde428513ff3bd98a3d4f1c66ac779411233f817 (diff) |
helper to convert CGImage -> SkImage
BUG=skia:
Change-Id: I07e0b8fe510d34ab541de7572cb6775478527624
Reviewed-on: https://skia-review.googlesource.com/6386
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Diffstat (limited to 'tools/Resources.cpp')
-rw-r--r-- | tools/Resources.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tools/Resources.cpp b/tools/Resources.cpp index 0c6e4b4adf..aa81d341b4 100644 --- a/tools/Resources.cpp +++ b/tools/Resources.cpp @@ -57,6 +57,19 @@ SkStreamAsset* GetResourceAsStream(const char* resource) { return stream.release(); } +sk_sp<SkData> GetResourceAsData(const char* resource) { + SkString resourcePath = GetResourcePath(resource); + std::unique_ptr<SkFILEStream> stream(new SkFILEStream(resourcePath.c_str())); + if (!stream->isValid()) { + SkDebugf("Resource %s not found.\n", resource); + return nullptr; + } + size_t bytes = stream->getLength(); + sk_sp<SkData> data = SkData::MakeUninitialized(bytes); + stream->read(data->writable_data(), bytes); + return data; +} + sk_sp<SkTypeface> MakeResourceAsTypeface(const char* resource) { std::unique_ptr<SkStreamAsset> stream(GetResourceAsStream(resource)); if (!stream) { |