diff options
Diffstat (limited to 'chromium/third_party/skia/src/utils/SkGatherPixelRefsAndRects.cpp')
-rw-r--r-- | chromium/third_party/skia/src/utils/SkGatherPixelRefsAndRects.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/chromium/third_party/skia/src/utils/SkGatherPixelRefsAndRects.cpp b/chromium/third_party/skia/src/utils/SkGatherPixelRefsAndRects.cpp new file mode 100644 index 00000000000..f46fe8ed42f --- /dev/null +++ b/chromium/third_party/skia/src/utils/SkGatherPixelRefsAndRects.cpp @@ -0,0 +1,25 @@ +/* + * Copyright 2014 Google Inc. + * + * Use of this source code is governed by a BSD-style license that can be + * found in the LICENSE file. + */ + +#include "SkGatherPixelRefsAndRects.h" +#include "SkNoSaveLayerCanvas.h" +#include "SkPictureUtils.h" + +void SkPictureUtils::GatherPixelRefsAndRects(SkPicture* pict, + SkPictureUtils::SkPixelRefContainer* prCont) { + if (0 == pict->width() || 0 == pict->height()) { + return ; + } + + SkGatherPixelRefsAndRectsDevice device(pict->width(), pict->height(), prCont); + SkNoSaveLayerCanvas canvas(&device); + + canvas.clipRect(SkRect::MakeWH(SkIntToScalar(pict->width()), + SkIntToScalar(pict->height())), + SkRegion::kIntersect_Op, false); + canvas.drawPicture(pict); +} |