OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2013 Google Inc. | 2 * Copyright 2013 Google Inc. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
6 */ | 6 */ |
7 | 7 |
8 #include "SkDropShadowImageFilter.h" | 8 #include "SkDropShadowImageFilter.h" |
9 | 9 |
10 #include "SkBitmap.h" | 10 #include "SkBitmap.h" |
11 #include "SkBlurImageFilter.h" | 11 #include "SkBlurImageFilter.h" |
12 #include "SkCanvas.h" | 12 #include "SkCanvas.h" |
13 #include "SkColorMatrixFilter.h" | 13 #include "SkColorMatrixFilter.h" |
14 #include "SkDevice.h" | 14 #include "SkDevice.h" |
15 #include "SkFlattenableBuffers.h" | 15 #include "SkFlattenableBuffers.h" |
16 | 16 |
17 SkDropShadowImageFilter::SkDropShadowImageFilter(SkScalar dx, SkScalar dy, SkSca
lar sigma, SkColor color, SkImageFilter* input) | 17 SkDropShadowImageFilter::SkDropShadowImageFilter(SkScalar dx, SkScalar dy, SkSca
lar sigma, SkColor color, SkImageFilter* input) |
18 : SkImageFilter(input) | 18 : SkImageFilter(input) |
19 , fDx(dx) | 19 , fDx(dx) |
20 , fDy(dy) | 20 , fDy(dy) |
21 , fSigma(sigma) | 21 , fSigma(sigma) |
22 , fColor(color) | 22 , fColor(color) |
23 { | 23 { |
24 } | 24 } |
25 | 25 |
26 SkDropShadowImageFilter::SkDropShadowImageFilter(SkFlattenableReadBuffer& buffer
) : INHERITED(buffer) | 26 SkDropShadowImageFilter::SkDropShadowImageFilter(SkFlattenableReadBuffer& buffer
) |
27 { | 27 : INHERITED(1, buffer) { |
28 fDx = buffer.readScalar(); | 28 fDx = buffer.readScalar(); |
29 fDy = buffer.readScalar(); | 29 fDy = buffer.readScalar(); |
30 fSigma = buffer.readScalar(); | 30 fSigma = buffer.readScalar(); |
31 fColor = buffer.readColor(); | 31 fColor = buffer.readColor(); |
32 buffer.validate(SkScalarIsFinite(fDx) && | 32 buffer.validate(SkScalarIsFinite(fDx) && |
33 SkScalarIsFinite(fDy) && | 33 SkScalarIsFinite(fDy) && |
34 SkScalarIsFinite(fSigma)); | 34 SkScalarIsFinite(fSigma)); |
35 } | 35 } |
36 | 36 |
37 void SkDropShadowImageFilter::flatten(SkFlattenableWriteBuffer& buffer) const | 37 void SkDropShadowImageFilter::flatten(SkFlattenableWriteBuffer& buffer) const |
(...skipping 18 matching lines...) Expand all Loading... |
56 SkAutoTUnref<SkColorFilter> colorFilter(SkColorFilter::CreateModeFilter(fCol
or, SkXfermode::kSrcIn_Mode)); | 56 SkAutoTUnref<SkColorFilter> colorFilter(SkColorFilter::CreateModeFilter(fCol
or, SkXfermode::kSrcIn_Mode)); |
57 SkPaint paint; | 57 SkPaint paint; |
58 paint.setImageFilter(blurFilter.get()); | 58 paint.setImageFilter(blurFilter.get()); |
59 paint.setColorFilter(colorFilter.get()); | 59 paint.setColorFilter(colorFilter.get()); |
60 paint.setXfermodeMode(SkXfermode::kSrcOver_Mode); | 60 paint.setXfermodeMode(SkXfermode::kSrcOver_Mode); |
61 canvas.drawBitmap(src, fDx, fDy, &paint); | 61 canvas.drawBitmap(src, fDx, fDy, &paint); |
62 canvas.drawBitmap(src, 0, 0); | 62 canvas.drawBitmap(src, 0, 0); |
63 *result = device->accessBitmap(false); | 63 *result = device->accessBitmap(false); |
64 return true; | 64 return true; |
65 } | 65 } |
OLD | NEW |