Matt Sarett
3928ff8e0b
Create an SkColorSpaceXform image generator
...
This should be immediately useful in the Skia-Android
rendering pipeline.
Possible future uses include creating a "renderable"
SkImage from a bitmap with a funny color space.
Inspired by:
https://skia-review.googlesource.com/c/13981/
Bug: b/62347704
Change-Id: I388c7af1fc43834b8ad22022d0caf3ac90b734c8
Reviewed-on: https://skia-review.googlesource.com/18598
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Matt Sarett <msarett@google.com>
2017-06-06 14:34:03 +00:00
Mike Reed
ad8b5dc69c
remove vestigle code for lockpixels
...
Bug: skia:6481
Change-Id: Icfd53981b8588fbea74fca2e3be58bc6f13ef923
Reviewed-on: https://skia-review.googlesource.com/13968
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-20 15:15:58 +00:00
Mike Reed
4edb5d219e
hide lockpixels api behind flag
...
guarded by SK_SUPPORT_OBSOLETE_LOCKPIXELS
needs https://codereview.chromium.org/2820873002/# to land first
Bug: skia:6481
Change-Id: I1c39902cbf6fe99f622adfa8192733b95f7fea09
Change-Id: I1c39902cbf6fe99f622adfa8192733b95f7fea09
Reviewed-on: https://skia-review.googlesource.com/13580
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Leon Scroggins <scroggo@google.com>
Commit-Queue: Mike Reed <reed@google.com>
2017-04-17 15:33:36 +00:00
Hal Canary
58a769490a
SkBitmap::ComputeIsOpaque -> SkPixmap::computeIsOpaque
...
Motivation: Twice internal Skia clients have to do something awkward like this:
bool ComputeIsOpaque(const SkPixmap& pixmap) {
SkBitmap bm;
return bm.installPixels(pixmap) && SkBitmap::ComputeIsOpaque(bm);
}
Change-Id: I7263c06f754c1305ecb07c4c005d9cfb9d1f523d
Reviewed-on: https://skia-review.googlesource.com/5684
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2016-12-07 21:44:39 +00:00
Mike Klein
744908e5e8
Fix SkModeColorFilter in 565
...
It has been incorrectly interpreting its SkColor as sRGB all the time. Now, we plumb through the destintation color space and some scratch space, letting it decide how to interpret its SkColor later when it knows about the dst color space. The scratch space is blitter scoped, which lets this be thread safe (this is much like SkShader::Context).
This only corrects the gamma transformation for now. I've kept my previous TODO about gamut transformation. Everything assumes sRGB gamut for now.
Shaders will get the same treatement in this pipeline.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4725
Change-Id: I55b0c7d5db9ad8d7dcdd6295c9dac61d10aeaed4
Reviewed-on: https://skia-review.googlesource.com/4725
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
2016-11-12 15:04:47 +00:00
Hal Canary
94e1a2fa4a
SkPixmap::getColor()
...
Implement SkBitmap::getColor() in terms of SkPixmap::getColor().
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4160
Change-Id: I6192a7979d82b3d301a06ae1339bcab4c7ebf7c1
Reviewed-on: https://skia-review.googlesource.com/4160
Reviewed-by: Mike Reed <reed@google.com>
Commit-Queue: Hal Canary <halcanary@google.com>
2016-10-31 14:09:15 +00:00
msarett
804b461bc4
SkPixmap::setColorSpace
...
Landed for reed@ with bug fix:
Use default copy constructor for SkDraw
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2057563002
patch from issue 2057563002 at patchset 1 (http://crrev.com/2057563002#ps1 )
Review-Url: https://codereview.chromium.org/2052943002
2016-06-09 11:03:45 -07:00
reed
8c3fd4f1b4
spriteblitter for memcpy case (for all configs)
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1887103003
Review URL: https://codereview.chromium.org/1887103003
2016-04-15 06:59:39 -07:00
robertphillips
3b5bea9d57
Add rowBytesAsPixels and shiftPerPixel to SkPixmap
...
This is intended to make it easier to manipulate SkBitmaps and SkPixmaps in a parallel manner (e.g., in https://codereview.chromium.org/1819393002/ (Switch SkMorphologyImageFilter over to new onFilterImage interface))
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1826233002
Review URL: https://codereview.chromium.org/1826233002
2016-03-24 11:21:25 -07:00
robertphillips
c5035e70cc
Add SkSpecialImage::extractSubset & NewFromPixmap
...
This is calved off of: https://codereview.chromium.org/1785643003/ (Switch SkBlurImageFilter over to new onFilterImage interface)
This now relies on: https://codereview.chromium.org/1813483002/ (ImagePixelLocker now manually allocates SkPixmap) to clean up the uses of SkAutoPixmapStorage in Chromium
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1787883002
Committed: https://skia.googlesource.com/skia/+/250581493a0859987e482810879e85e5ac2dc002
Review URL: https://codereview.chromium.org/1787883002
2016-03-17 06:58:39 -07:00
robertphillips
19dea94f1d
Revert of Add SkSpecialImage::extractSubset & NewFromPixmap (patchset #5 id:80001 of https://codereview.chromium.org/1787883002/ )
...
Reason for revert:
Need to wean ImagePixelLocker.h off of SkAutoPixmapStorage :(
Original issue's description:
> Add SkSpecialImage::extractSubset & NewFromPixmap
>
> This is calved off of: https://codereview.chromium.org/1785643003/ (Switch SkBlurImageFilter over to new onFilterImage interface)
>
> GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1787883002
>
> Committed: https://skia.googlesource.com/skia/+/250581493a0859987e482810879e85e5ac2dc002
TBR=bsalomon@google.com ,reed@google.com
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
Review URL: https://codereview.chromium.org/1808833002
2016-03-16 10:39:09 -07:00
robertphillips
250581493a
Add SkSpecialImage::extractSubset & NewFromPixmap
...
This is calved off of: https://codereview.chromium.org/1785643003/ (Switch SkBlurImageFilter over to new onFilterImage interface)
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1787883002
Review URL: https://codereview.chromium.org/1787883002
2016-03-16 09:47:08 -07:00
bsalomon
41b952c296
Add deferred texture upload API.
...
Performs thread-safe decoding of SkImage in order to later create a texture-backed SkImage.
The client allocates storage for the data.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1776693002
Review URL: https://codereview.chromium.org/1776693002
2016-03-11 06:46:33 -08:00
reed
3601f280dc
add kRGBA_F16_SkColorType
...
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1666343002
Review URL: https://codereview.chromium.org/1666343002
2016-02-05 11:18:39 -08:00
fmalita
3a94c6c62c
Add SkAutoPixmapStorage::detachPixelsAsData()
...
Allows passing pixels ownership to clients.
BUG=skia:4896
R=reed@google.com
GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1662353002
Review URL: https://codereview.chromium.org/1662353002
2016-02-04 13:09:59 -08:00
reed
095530389d
scaling API on SkPixmap
...
BUG=skia:4481
Review URL: https://codereview.chromium.org/1463373002
2015-11-23 12:32:16 -08:00
fmalita
9a5d1ab54d
Make peekPixels() usable with raster surface snapshots
...
SkSurface_Raster snapshots do not lock their backing bitmaps when the
pixel ref is shared - they only lock on deep-copy.
But since for raster surfaces the pixels are always in memory, I think
it would be OK to also lock in the former case.
This allows for optimized (zero-copy) reads of raster surface snapshot
data.
R=reed@google.com
Review URL: https://codereview.chromium.org/1256993002
2015-07-27 10:27:29 -07:00
reed
7aefe03211
Revert "Revert of move erase into SkPixmap (patchset #1 id:1 of https://codereview.chromium.org/1161033005/ )"
...
This reverts commit cca9b3ac90
.
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/1153473012
2015-06-08 10:22:22 -07:00
djsollen
cca9b3ac90
Revert of move erase into SkPixmap (patchset #1 id:1 of https://codereview.chromium.org/1161033005/ )
...
Reason for revert:
broken builds
Original issue's description:
> move erase into SkPixmap
>
> harvested from https://codereview.chromium.org/1148793007
>
> BUG=skia:
> TBR=
>
> Committed: https://skia.googlesource.com/skia/+/0963f5dab079627c5523ce6a443af27a33e361f7
TBR=reed@google.com
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=skia:
Review URL: https://codereview.chromium.org/1157303008
2015-06-08 10:03:49 -07:00
reed
0963f5dab0
move erase into SkPixmap
...
harvested from https://codereview.chromium.org/1148793007
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/1161033005
2015-06-08 09:16:54 -07:00
reed
183b57f309
add extractSubset and SkAutoPixmapStorage
...
extracted from larger CL in progress: https://codereview.chromium.org/1148793007
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/1162013008
2015-06-05 14:33:17 -07:00
reed
ad7ae6c821
switch bitmapshader internals over to pixmap
...
BUG=skia:
NOTRY=True
Review URL: https://codereview.chromium.org/1158273007
2015-06-04 14:12:25 -07:00
reed
884e97cb04
change internals over to SkPixmap and stop using accessBitmap
...
BUG=skia:
Review URL: https://codereview.chromium.org/1155443004
2015-05-26 11:31:54 -07:00
reed
95d343f408
move readPixels from bitmap -> pixmap
...
BUG=skia:
TBR=
Review URL: https://codereview.chromium.org/1153893003
2015-05-23 13:21:07 -07:00
reed
92fc2ae583
add SkPixmap and external locking to bitmaps
...
BUG=skia:
Review URL: https://codereview.chromium.org/1074983003
2015-05-22 08:06:22 -07:00