[Webkit-unassigned] [Bug 32199] feSpecularLighting is not implemented
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Apr 29 06:27:59 PDT 2010
https://bugs.webkit.org/show_bug.cgi?id=32199
Zoltan Herczeg <zherczeg at webkit.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |zherczeg at webkit.org
--- Comment #1 from Zoltan Herczeg <zherczeg at webkit.org> 2010-04-29 06:27:58 PST ---
It seems to me it is still an unimplemented feature, and I think of pick up
this task for myself. I am new on svg part of WebKit, and I want to make sure
my approach is reasonable:
- from an <feSpecularLighting ...> tag a FESpecularLighting object is created
it contains one light source (It is unclear for me that multiple light
sources are allowed or not)
- I have to implement its "void apply(Filter*)" function
- SVGFESpecularLightingElement is used only for visiting the nodes
Besides, why the filters are spread across multiple directories in WebKit?
platform/graphics/filters, svg/graphics/filters ?
Ok the task itself (based on GaussianBlur):
void FESpecularLighting::apply(Filter*)
{
m_in->apply(filter);
if (!m_in->resultImage())
return;
if (!getEffectContext())
return;
setIsAlphaImage(m_in->isAlphaImage());
IntRect effectDrawingRect =
calculateDrawingIntRect(m_in->scaledSubRegion());
RefPtr<ImageData>
srcImageData(m_in->resultImage()->getPremultipliedImageData(effectDrawingRect));
CanvasPixelArray* srcPixelArray(srcImageData->data());
// Do the effect here
// http://www.w3.org/TR/SVG/filters.html#feSpecularLighting
resultImage()->putPremultipliedImageData(srcImageData.get(), imageRect,
IntPoint());
}
Is this ok?
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list