[webkit-changes] [WebKit/WebKit] 1a169d: Add experimental feature for post-processing Canva...
Matthew Finkel
noreply at github.com
Fri Mar 3 17:59:13 PST 2023
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 1a169d095a6691b2461810e3b639fffed1cf87f6
https://github.com/WebKit/WebKit/commit/1a169d095a6691b2461810e3b639fffed1cf87f6
Author: Matthew Finkel <sysrqb at apple.com>
Date: 2023-03-03 (Fri, 03 Mar 2023)
Changed paths:
M Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml
M Source/WebCore/html/CanvasBase.cpp
M Source/WebCore/html/CanvasBase.h
M Source/WebCore/html/HTMLCanvasElement.cpp
M Source/WebCore/html/canvas/CanvasRenderingContext.h
M Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp
M Source/WebCore/html/canvas/CanvasRenderingContext2DBase.h
M Source/WebCore/html/canvas/CanvasStyle.h
Log Message:
-----------
Add experimental feature for post-processing Canvas image data
https://bugs.webkit.org/show_bug.cgi?id=243555
rdar://98525861
Reviewed by Wenson Hsieh.
In this new experimental feature we post-process the Canvas2D and WebGL buffers
by adding small amounts of noise in the rendered image data. The approach this
patch takes is similar to a proposed patch by Eli Lucherini. In that patch, for
every pixel of the rendered canvas, with some probability one primary color
channel of a pixel might have a small amount of noise added. In this patch,
instead we add small amounts of noise depending on the whole pixel's value.
* Source/WTF/Scripts/Preferences/UnifiedWebPreferences.yaml:
* Source/WebCore/html/CanvasBase.cpp:
(WebCore::CanvasBase::makeRenderingResultsAvailable):
(WebCore::CanvasBase::postProcessPixelBuffer const):
* Source/WebCore/html/CanvasBase.h:
* Source/WebCore/html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::getImageData):
* Source/WebCore/html/canvas/CanvasRenderingContext.h:
(WebCore::CanvasRenderingContext::postProcessPixelBuffer const):
* Source/WebCore/html/canvas/CanvasRenderingContext2DBase.cpp:
(WebCore::CanvasRenderingContext2DBase::setFillStyle):
(WebCore::computeImageDataRect):
(WebCore::CanvasRenderingContext2DBase::postProcessPixelBuffer const):
(WebCore::CanvasRenderingContext2DBase::didDraw):
(WebCore::CanvasRenderingContext2DBase::getImageData const):
(WebCore::CanvasRenderingContext2DBase::putImageData):
* Source/WebCore/html/canvas/CanvasRenderingContext2DBase.h:
(WebCore::CanvasRenderingContext2DBase::suppliedColors const):
* Source/WebCore/html/canvas/CanvasStyle.h:
(WebCore::CanvasStyle::srgbaColor const):
Canonical link: https://commits.webkit.org/261197@main
More information about the webkit-changes
mailing list