aboutsummaryrefslogtreecommitdiffhomepage
path: root/tools/Resources.cpp
diff options
context:
space:
mode:
authorGravatar Mike Reed <reed@google.com>2016-12-21 12:01:12 -0500
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2016-12-21 17:38:18 +0000
commit463c848f3b63b52e3834e405ff11fd1e653ed271 (patch)
tree7b1b0e7f829f1f3d838f3c42307e6eed2ed3c6d0 /tools/Resources.cpp
parentbde428513ff3bd98a3d4f1c66ac779411233f817 (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.cpp13
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) {