aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrColorSpaceXform.cpp
diff options
context:
space:
mode:
authorGravatar brianosman <brianosman@google.com>2016-09-12 12:07:25 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2016-09-12 12:07:25 -0700
commit5a7ae7e337a68dc42723fce80752c93b7d26d469 (patch)
tree24ebe49dc9e9dc4f7e9e032f2106aaa622596a0f /src/gpu/GrColorSpaceXform.cpp
parent6ade6dd9910be25c15e25c90d76f8471ff23f62c (diff)
Gamut transformation of the paint color in Ganesh
Conversion from sRGB to destination gamut is going to be very common, so I'm caching that xform (if there is one) on the draw context. Results verified in the gamut GM (two more boxes correct). BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2330553003 Review-Url: https://codereview.chromium.org/2330553003
Diffstat (limited to 'src/gpu/GrColorSpaceXform.cpp')
-rw-r--r--src/gpu/GrColorSpaceXform.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gpu/GrColorSpaceXform.cpp b/src/gpu/GrColorSpaceXform.cpp
index 2d17610bda..3380b0f390 100644
--- a/src/gpu/GrColorSpaceXform.cpp
+++ b/src/gpu/GrColorSpaceXform.cpp
@@ -58,3 +58,9 @@ sk_sp<GrColorSpaceXform> GrColorSpaceXform::Make(SkColorSpace* src, SkColorSpace
return sk_make_sp<GrColorSpaceXform>(srcToDst);
}
+
+GrColor4f GrColorSpaceXform::apply(const GrColor4f& srcColor) {
+ GrColor4f result;
+ fSrcToDst.mapScalars(srcColor.fRGBA, result.fRGBA);
+ return result;
+}