| OLD | NEW |
| 1 | 1 |
| 2 /* | 2 /* |
| 3 * Copyright 2006 The Android Open Source Project | 3 * Copyright 2006 The Android Open Source Project |
| 4 * | 4 * |
| 5 * Use of this source code is governed by a BSD-style license that can be | 5 * Use of this source code is governed by a BSD-style license that can be |
| 6 * found in the LICENSE file. | 6 * found in the LICENSE file. |
| 7 */ | 7 */ |
| 8 | 8 |
| 9 | 9 |
| 10 #ifndef SkXfermode_DEFINED | 10 #ifndef SkXfermode_DEFINED |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 63 For these equations, the colors are in premultiplied state. | 63 For these equations, the colors are in premultiplied state. |
| 64 If no xfermode is specified, kSrcOver is assumed. | 64 If no xfermode is specified, kSrcOver is assumed. |
| 65 The modes are ordered by those that can be expressed as a pair of Coeffs
, followed by those | 65 The modes are ordered by those that can be expressed as a pair of Coeffs
, followed by those |
| 66 that aren't Coeffs but have separable r,g,b computations, and finally | 66 that aren't Coeffs but have separable r,g,b computations, and finally |
| 67 those that are not separable. | 67 those that are not separable. |
| 68 */ | 68 */ |
| 69 enum Mode { | 69 enum Mode { |
| 70 kClear_Mode, //!< [0, 0] | 70 kClear_Mode, //!< [0, 0] |
| 71 kSrc_Mode, //!< [Sa, Sc] | 71 kSrc_Mode, //!< [Sa, Sc] |
| 72 kDst_Mode, //!< [Da, Dc] | 72 kDst_Mode, //!< [Da, Dc] |
| 73 kSrcOver_Mode, //!< [Sa + Da - Sa*Da, Rc = Sc + (1 - Sa)*Dc] | 73 kSrcOver_Mode, //!< [Sa + Da * (1 - Sa), Sc + Dc * (1 - Sa)] |
| 74 kDstOver_Mode, //!< [Sa + Da - Sa*Da, Rc = Dc + (1 - Da)*Sc] | 74 kDstOver_Mode, //!< [Da + Sa * (1 - Da), Dc + Sc * (1 - Da)] |
| 75 kSrcIn_Mode, //!< [Sa * Da, Sc * Da] | 75 kSrcIn_Mode, //!< [Sa * Da, Sc * Da] |
| 76 kDstIn_Mode, //!< [Sa * Da, Sa * Dc] | 76 kDstIn_Mode, //!< [Da * Sa, Dc * Sa] |
| 77 kSrcOut_Mode, //!< [Sa * (1 - Da), Sc * (1 - Da)] | 77 kSrcOut_Mode, //!< [Sa * (1 - Da), Sc * (1 - Da)] |
| 78 kDstOut_Mode, //!< [Da * (1 - Sa), Dc * (1 - Sa)] | 78 kDstOut_Mode, //!< [Da * (1 - Sa), Dc * (1 - Sa)] |
| 79 kSrcATop_Mode, //!< [Da, Sc * Da + (1 - Sa) * Dc] | 79 kSrcATop_Mode, //!< [Da, Sc * Da + Dc * (1 - Sa)] |
| 80 kDstATop_Mode, //!< [Sa, Sa * Dc + Sc * (1 - Da)] | 80 kDstATop_Mode, //!< [Sa, Dc * Sa + Sc * (1 - Da)] |
| 81 kXor_Mode, //!< [Sa + Da - 2 * Sa * Da, Sc * (1 - Da) + (1 - Sa) *
Dc] | 81 kXor_Mode, //!< [Sa + Da - 2 * Sa * Da, Sc * (1 - Da) + Dc * (1 - S
a)] |
| 82 kPlus_Mode, //!< [Sa + Da, Sc + Dc] | 82 kPlus_Mode, //!< [Sa + Da, Sc + Dc] |
| 83 kModulate_Mode, // multiplies all components (= alpha and color) | 83 kModulate_Mode, // multiplies all components (= alpha and color) |
| 84 | 84 |
| 85 // Following blend modes are defined in the CSS Compositing standard: | 85 // Following blend modes are defined in the CSS Compositing standard: |
| 86 // https://dvcs.w3.org/hg/FXTF/rawfile/tip/compositing/index.html#blendi
ng | 86 // https://dvcs.w3.org/hg/FXTF/rawfile/tip/compositing/index.html#blendi
ng |
| 87 kScreen_Mode, | 87 kScreen_Mode, |
| 88 kLastCoeffMode = kScreen_Mode, | 88 kLastCoeffMode = kScreen_Mode, |
| 89 | 89 |
| 90 kOverlay_Mode, | 90 kOverlay_Mode, |
| 91 kDarken_Mode, | 91 kDarken_Mode, |
| (...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 235 | 235 |
| 236 private: | 236 private: |
| 237 enum { | 237 enum { |
| 238 kModeCount = kLastMode + 1 | 238 kModeCount = kLastMode + 1 |
| 239 }; | 239 }; |
| 240 | 240 |
| 241 typedef SkFlattenable INHERITED; | 241 typedef SkFlattenable INHERITED; |
| 242 }; | 242 }; |
| 243 | 243 |
| 244 #endif | 244 #endif |
| OLD | NEW |