| 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. |