Summary: | [CSS Blending] Wrong color result for basic blend modes | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Ion Rosca <rosca> | ||||
Component: | CSS | Assignee: | Nobody <webkit-unassigned> | ||||
Status: | RESOLVED WORKSFORME | ||||||
Severity: | Normal | CC: | ap, mitica, simon.fraser, webkit-bug-importer, WebkitBugTracker | ||||
Priority: | P2 | Keywords: | InRadar | ||||
Version: | 528+ (Nightly build) | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Bug Depends on: | |||||||
Bug Blocks: | 95614, 131377 | ||||||
Attachments: |
|
Description
Ion Rosca
2014-03-21 05:27:49 PDT
(In reply to comment #0) > Created an attachment (id=227417) [details] > Sample for 'difference' mode results > > According to the spec[1], the 'difference' blend mode should be computed using this formula: B(Cb, Cs) = | Cb - Cs |. > For example: Fuchsia difference Aqua = Yellow > > The result in webkit is different than Yellow. On retina display it's a pale yellow rgb(204, 214, 0), but on non-retina displays, the result is a pale green rgb(0, 190, 0). > > The behaviour is the same for both accelerated and non-accelerated blending. I did not test for other blend modes than difference (TBD). > > [1] http://dev.w3.org/fxtf/compositing-1/#blendingdifference There are also problems with other blend modes. The biggest differences are with soft-light. In fact, when validating canvas blend modes, the tests submitted https://bugs.webkit.org/show_bug.cgi?id=119082 entirely skip soft-light since the differences between the formula and the result are consistent. Imho, this is rather a CG/CA bug. This doesn't appear to be failing on bots any more, will remove the expectation. |