aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-11-12 16:11:07 +0000
committerGravatar reed@google.com <reed@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2013-11-12 16:11:07 +0000
commit23be7a58d9d69ae0a06788c2d798f2f92baea29c (patch)
tree949787e19fd52b86d2d447e963f1ecd0ea1c1abd
parent5401cd019b5a355bdc20f0846e50a641f45e03c2 (diff)
add colortable enum to SkImage to ease interop between it and SkBitmap::Config
BUG= R=halcanary@google.com, scroggo@google.com Review URL: https://codereview.chromium.org/68853003 git-svn-id: http://skia.googlecode.com/svn/trunk@12245 2bbb7eff-a529-9590-31e7-b0007b416f81
-rw-r--r--include/core/SkImage.h3
-rw-r--r--src/image/SkImagePriv.cpp10
2 files changed, 11 insertions, 2 deletions
diff --git a/include/core/SkImage.h b/include/core/SkImage.h
index ae8bbf5d50..39f2ec931e 100644
--- a/include/core/SkImage.h
+++ b/include/core/SkImage.h
@@ -37,7 +37,8 @@ enum SkColorType {
#error "SK_*32_SHFIT values must correspond to BGRA or RGBA byte order"
#endif
- kLastEnum_SkColorType = kBGRA_8888_SkColorType
+ kIndex8_SkColorType,
+ kLastEnum_SkColorType = kIndex8_SkColorType
};
struct SkImageInfo {
diff --git a/src/image/SkImagePriv.cpp b/src/image/SkImagePriv.cpp
index a79f8dba65..0eb6478083 100644
--- a/src/image/SkImagePriv.cpp
+++ b/src/image/SkImagePriv.cpp
@@ -20,6 +20,9 @@ SkBitmap::Config SkImageInfoToBitmapConfig(const SkImageInfo& info) {
case kPMColor_SkColorType:
return SkBitmap::kARGB_8888_Config;
+ case kIndex8_SkColorType:
+ return SkBitmap::kIndex8_Config;
+
default:
// break for unsupported colortypes
break;
@@ -34,6 +37,7 @@ int SkImageBytesPerPixel(SkColorType ct) {
4, // kRGBA_8888_SkColorType
4, // kBGRA_8888_SkColorType
4, // kPMColor_SkColorType
+ 1, // kIndex8_SkColorType
};
SkASSERT((size_t)ct < SK_ARRAY_COUNT(gColorTypeBytesPerPixel));
@@ -45,7 +49,11 @@ bool SkBitmapToImageInfo(const SkBitmap& bm, SkImageInfo* info) {
case SkBitmap::kA8_Config:
info->fColorType = kAlpha_8_SkColorType;
break;
-
+
+ case SkBitmap::kIndex8_Config:
+ info->fColorType = kIndex8_SkColorType;
+ break;
+
case SkBitmap::kRGB_565_Config:
info->fColorType = kRGB_565_SkColorType;
break;