extend compose-colorfilter to 4f
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1664663003
Review URL: https://codereview.chromium.org/1664663003
diff --git a/src/core/SkColor.cpp b/src/core/SkColor.cpp
index 865fe0d..87e3a9d 100644
--- a/src/core/SkColor.cpp
+++ b/src/core/SkColor.cpp
@@ -111,6 +111,16 @@
return c4;
}
+SkColor4f SkPM4f::unpremul() const {
+ float alpha = fVec[A];
+ if (0 == alpha) {
+ return { 0, 0, 0, 0 };
+ } else {
+ float invAlpha = 1 / alpha;
+ return { alpha, fVec[R] * invAlpha, fVec[G] * invAlpha, fVec[B] * invAlpha };
+ }
+}
+
SkColor4f SkColor4f::FromColor(SkColor c) {
Sk4f value = SkNx_shuffle<3,2,1,0>(SkNx_cast<float>(Sk4b::Load(&c)));
SkColor4f c4;