diff options
author | commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2014-04-08 15:19:34 +0000 |
---|---|---|
committer | commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2014-04-08 15:19:34 +0000 |
commit | c5d9bb0f677069f62ec76373b9730e70e7352455 (patch) | |
tree | 675c12cf12966ea1b37d06d9c5e0416b1ca7be79 /include | |
parent | 03a99b8f96b56d3349fa7b6832638e3b9830d169 (diff) |
Initial picture shader implementation
This CL adds an SkPictureShader class to support SkPicture-based
patterns.
The implementation renders the picture into an SkBitmap tile and then
delegates to SkBitmapProcShader for the actual operation.
R=bsalomon@google.com, reed@google.com, robertphillips@google.com
Committed: http://code.google.com/p/skia/source/detail?r=14085
Author: fmalita@chromium.org
Review URL: https://codereview.chromium.org/221923007
git-svn-id: http://skia.googlecode.com/svn/trunk@14092 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'include')
-rw-r--r-- | include/core/SkShader.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/include/core/SkShader.h b/include/core/SkShader.h index acff959949..076ecf5460 100644 --- a/include/core/SkShader.h +++ b/include/core/SkShader.h @@ -16,6 +16,7 @@ #include "SkPaint.h" class SkPath; +class SkPicture; class GrContext; class GrEffectRef; @@ -345,6 +346,16 @@ public: static SkShader* CreateBitmapShader(const SkBitmap& src, TileMode tmx, TileMode tmy); + /** Call this to create a new shader that will draw with the specified picture. + * + * @param src The picture to use inside the shader (if not NULL, its ref count + * is incremented). + * @param tmx The tiling mode to use when sampling the bitmap in the x-direction. + * @param tmy The tiling mode to use when sampling the bitmap in the y-direction. + * @return Returns a new shader object. Note: this function never returns null. + */ + static SkShader* CreatePictureShader(SkPicture* src, TileMode tmx, TileMode tmy); + SK_TO_STRING_VIRT() SK_DEFINE_FLATTENABLE_TYPE(SkShader) |