| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2011 Google Inc. | 2 * Copyright 2011 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 "SkColorFilter.h" | 8 #include "SkColorFilter.h" |
| 9 #include "SkDevice.h" | 9 #include "SkDevice.h" |
| 10 #include "SkDraw.h" | 10 #include "SkDraw.h" |
| (...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 191 | 191 |
| 192 for (int i = 0; i < count; ++i) { | 192 for (int i = 0; i < count; ++i) { |
| 193 SkPoint quad[4]; | 193 SkPoint quad[4]; |
| 194 xform[i].toQuad(tex[i].width(), tex[i].height(), quad); | 194 xform[i].toQuad(tex[i].width(), tex[i].height(), quad); |
| 195 | 195 |
| 196 SkMatrix localM; | 196 SkMatrix localM; |
| 197 localM.setRSXform(xform[i]); | 197 localM.setRSXform(xform[i]); |
| 198 localM.preTranslate(-tex[i].left(), -tex[i].top()); | 198 localM.preTranslate(-tex[i].left(), -tex[i].top()); |
| 199 | 199 |
| 200 SkPaint pnt(paint); | 200 SkPaint pnt(paint); |
| 201 pnt.setShader(atlas->newShader(SkShader::kClamp_TileMode, SkShader::kCla
mp_TileMode, | 201 SkAutoTUnref<SkShader> shader(atlas->newShader(SkShader::kClamp_TileMode
, |
| 202 &localM))->unref(); | 202 SkShader::kClamp_TileMode
, |
| 203 &localM)); |
| 204 if (!shader) { |
| 205 break; |
| 206 } |
| 207 pnt.setShader(shader); |
| 208 |
| 203 if (colors && colors[i] != SK_ColorWHITE) { | 209 if (colors && colors[i] != SK_ColorWHITE) { |
| 204 SkAutoTUnref<SkColorFilter> cf(SkColorFilter::CreateModeFilter(color
s[i], mode)); | 210 SkAutoTUnref<SkColorFilter> cf(SkColorFilter::CreateModeFilter(color
s[i], mode)); |
| 205 pnt.setColorFilter(cf); | 211 pnt.setColorFilter(cf); |
| 206 } | 212 } |
| 207 | 213 |
| 208 path.rewind(); | 214 path.rewind(); |
| 209 path.addPoly(quad, 4, true); | 215 path.addPoly(quad, 4, true); |
| 210 path.setConvexity(SkPath::kConvex_Convexity); | 216 path.setConvexity(SkPath::kConvex_Convexity); |
| 211 this->drawPath(draw, path, pnt, NULL, true); | 217 this->drawPath(draw, path, pnt, NULL, true); |
| 212 } | 218 } |
| (...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 408 if (kUnknown_SkPixelGeometry == fSurfaceProps.pixelGeometry() | 414 if (kUnknown_SkPixelGeometry == fSurfaceProps.pixelGeometry() |
| 409 || this->onShouldDisableLCD(paint)) { | 415 || this->onShouldDisableLCD(paint)) { |
| 410 | 416 |
| 411 flags &= ~SkPaint::kLCDRenderText_Flag; | 417 flags &= ~SkPaint::kLCDRenderText_Flag; |
| 412 flags |= SkPaint::kGenA8FromLCD_Flag; | 418 flags |= SkPaint::kGenA8FromLCD_Flag; |
| 413 } | 419 } |
| 414 | 420 |
| 415 return flags; | 421 return flags; |
| 416 } | 422 } |
| 417 | 423 |
| OLD | NEW |